Professional Documents
Culture Documents
VIM Configuration
VIM Configuration
Change History
Date Created Version Prepared By Reason For Revision
Table of Contents
1 CONFIGURATION DOCUMENTATION 4
1.1.1 Audience 4
1.3 Roles 6
1.4.1.6 Exceptions 30
1 CONFIGURATION DOCUMENTATION
1.1.1 Audience
This document is intended for use by anyone who has responsibility for implementing Open Text’s VIM
Solution and for performing custom enhancements in the SAP ERP environment. It assumes that the reader
has familiarity with the functional design of VIM solution as documented in VIM 6.0 Functional Design
Document. It also assumes that the reader has familiarity with SAP ABAP development and has sufficient
SAP Workflow knowledge.
1.3 Roles
Roles in the context of VIM identify users that are responsible for working on a specific invoice during
the processing of that invoice. VIM Roles are not to be confused with SAP Roles and Authorizations.
SAP Roles determine what transactions a user has access to and limits what can be done within that
transaction.
AP Processor Accounts PO_AP_PROC Work centers with User IDs Work centers with
Payable User IDs
personnel &
NPO_AP_PROC
Vendor Master Person(s) who VENDOR_MAINT Work centers with User IDs Work centers with
Data is responsible User IDs
for creating
and
maintaining the
vendor master
records
Validator Person(s) who VALIDATOR Work centers with User IDs based on Work centers with
perform Document Types (Invoice Queues) User IDs based
manual on Document
validation on Types (Invoice
the meta-data Queues)
extracted by
the OCR (ICC)
* For more information on Roles and their configuration, please refer to Chapter 5 of the VIM 6.0 Configuration Guide
PO-based invoices at CareFusion are received through emails or through scanned (hard copy mailed
invoices). They will go through OCR extraction and validation before processing starts in SAP.
This section describes the configuration aspects involved for processing of PO Invoices. Details of the
metadata fields that are needed for processing the invoice (called indexing fields) and their behavior
within the workflows will be described.
Anomaly 1552 – OCR inbound email duplication/loss – Large emails with 14+ attachments were causing
the email handler class (ZFI_OT_VIM_HANDLER_CLASS) to become overwhelmed during testing.
While the SAP process was tied up, a confirmation of email receipt could not be sent back to MS
exchange so it continued to resend emails and flood the inbound email queue creating hundreds of
additional invoice copies. To prevent this from occurring in the future, a program change was made to
split off the email confirmation from the rest of the process that creates DP documents and starts
workflow. Now the two processes run in parallel. Change: R1DK912425
Invoice Queue
1 PO Invoices - Rush
2 PO Invoices - Regular
3 PO Invoices - Spanish
o Single Paper
o Multipage
o Fax Document
Notes:
1.4.1.5.1 Profiles
Invoice Queue
1 PO Invoices - Rush
2 PO Invoices - Regular
3 PO Invoices - Spanish
PO Number Range:
4100000000 4199999999
4200000000 4299999999
4300000000 4399999999
4500000000 4599999999
4700000000 4799999999
4800000000 4899999999
4900000000 4999999999
5100000000 5199999999
Display Culture
Field List:
Display
Field Label Mandatory Only Data Source
Credit
Memo(CM) Flag
Document Date X Identify from Image
Reference
Number X Identify from Image
Gross Amount X Identify from Image
Net Amount Identify from Image
Total Tax Amount Identify from Image
Currency X Identify from Image
Identify from Image based on ICC software training
Freight Amount
Recognized from Image, PO Number ranges will
PO Number X be maintained in ICC configuration.
Following fields will be derived as part of business rules. This is extension list item EX06.
6. Remove invalid data coming in from ICC (Company Code ‘9999’, Currency ‘NAN’).
FUNCTION ZFI_OT_VIM_DERIVATION_RULE_PO .
*"---------------------------------------------------------------------
-
*"*"Local Interface:
*" CHANGING
*" REFERENCE(INDEX_DATA) TYPE /OPT/VIM_1HEAD OPTIONAL
*" EXCEPTIONS
*" CHECK_FAILED
*"---------------------------------------------------------------------
-
This is configured as the very first business rule in the invoice exceptions:
1.4.1.6 Exceptions
This section describes how various business exceptions will be handled in the processing of invoices.
As an invoice flows through VIM business rules, it goes through a series of checks – whenever an
exception occurs the work item will go to a predefined set of people (OpenText role) who are expected to
resolve the issue.
This section covers various business exceptions or rules that are involved in processing PO-based
invoices.
Invalid PO:
Invalid UOM:
Quantity Missing:
How this exception occurs?
PO not Released:
How this exception occurs?
Vendor Mismatch:
How this exception occurs?
UOM Mismatch:
How this exception occurs?
Invalid Requisitioner:
How this exception occurs?
Freight on invoice:
How this exception occurs?
Approval Required:
How this exception occurs?
(Approval workitem for PO Invoice is sent to the Requisitioner on the first line item of the PO. This is
performed by the approval workflow. Once approval step is completed, workitem is sent to PO_AP_PROC).
AP Processor Role – An AP processor can modify the index field (metadata) and can communicate
between other roles involved in the invoice processing. When users execute a work item, they will be
presented with the index screen in change mode. They can switch to the dashboard view to perform
certain actions.
User Assignment:
Process Options:
The process options refer to actions that a particular user can take to resolve issues related to a
particular business exception. Actions available are dependent on user role.
The following table lists some of the actions that can be performed by an AP Processor:
Change Document Type If invoices are scanned in wrong queue can be changed to
different invoice queue
Refer to Vendor Maintenance Select this option to route the work item to Vendor
Maintenance group for vendor related issues. It is possible to
override system proposed list of users.
Request for Rescan Work item will be routed to rescan operator. When user
requesting for rescan, it is required to select Rescan
Reasons.
Co Reason Comments
de Required
01 Invoice Return to
Vendor
02 Vendor Sent in
Replacement
03 Document Has Already
been Processed
99 Others X
Refer to Info Provider Refer to some other user for information, they can send back
with comments
CareFusion – Information Technology Doc Type: Technical Design
Note: If comments required option is enabled, a user can't complete that action on invoice without
entering comments.
This section describes the configuration aspects involved for processing of Non PO Invoices. Details of
the metadata fields that are needed for processing the invoice (called indexing fields) and their behavior
within the workflows will be described.
Invoice Queue
1 NonPO Invoices - Rush
o Single Paper
o Multipage
o Fax Document
Notes:
4 .For NonPO Invoice default process type is 207 - "Process NonPO Invoice"
Anomaly 1385 – add vendor line item text to all PO doctypes (provides AP easier ability to put notes
that can be seen when displaying FI document later) – For doctypes ZPPO_RG_FX, ZPPO_RG_PD,
ZNPO_SP_FX, ZPPO_SP_UR, ZPPO_UR_PD, ZPPO_UR_FX
1.5.5.1 Profiles
Invoice Queue
1 NonPO Invoices - Rush
Display Culture
Field List:
Display
Field Label Mandatory Only Data Source
Credit
Memo(CM) Flag
Document Date X Identify from Image
Reference
Number X Identify from Image
Gross Amount X Identify from Image
Net Amount Identify from Image
Total Tax Amount Identify from Image
Currency X Identify from Image
Identify from Image based on ICC software training
Freight Amount
Recognized from Image (string with
Requester Email X ‘@carefusion.com)
Following fields will be derived as part of business rules. This is extension list item EX06.
6. Remove invalid data coming in from ICC (Company Code ‘9999’, Currency ‘NAN’).
FUNCTION ZFI_OT_VIM_DERIVATION_RULE_NPO .
*"---------------------------------------------------------------------
-
*"*"Local Interface:
*" CHANGING
*" REFERENCE(INDEX_DATA) TYPE /OPT/VIM_1HEAD OPTIONAL
*" EXCEPTIONS
*" CHECK_FAILED
*"---------------------------------------------------------------------
-
This is configured as the very first business rule in the invoice exceptions:
1.5.6 Exceptions
This section describes how various business exceptions will be handled in the processing of invoices.
As an invoice flows through VIM business rules, it goes through a series of checks – whenever an
exception occurs the work item will go to a predefined set of people (OpenText role) who are expected to
resolve the issue.
This section covers various business exceptions or rules that are involved in processing NonPO-based
invoices.
Invalid Vendor:
Invalid Requester:
(Approval workitem for Non PO Invoice is sent to the Requester first (for coding) and then to the Approvers
(for approvals). This is performed by the approval workflow. Once approval step is completed, workitem is
sent to NPO_AP_PROC).
Anomaly 1399: Ability to designate default coder for portal approvals. In order to implement this functionality,
a ABAP code change was required. Logic first assumes that coder = requestor from the invoice; however if
that requestor has a default coder defined in the user's personal settings, it will then go to the designated
coder first instead.
Changes were made to ZFI_OT_VIM_GR_MISSING_MAIN, ZFI_OT_VIM_CODER_DETERMINE,
ZFI_OT_VIM_DERIVATION_RULE_NPO.
4) Configure VIM
Configure the scanner computer as the scan shot on the Archive server . On Archive server assign
late archive mode to the scan station.
Comment # return(0, "script 'scanr3.pl' has not been replaced by a project script");
Double click on ‘Set Document Pipeline Attributes’ and put the following script
import System;
Document.COMMANDS += "USE_VR4WFL 6\n";
Document.IXATTR = "NEWDOC\n";
Document.IXATTR += "ARCHIVIDATTR ZDUMMY|ARCHIV_ID|CC|%-2.2s|\n";
Document.IXATTR += "DOCIDATTR ZDUMMY|ARC_DOC_ID|CC|%-40.40s|\n";
Document.IXATTR += "ATTRIBUTES ZDUMMY|USERNAME|CC|" +
System.Environment.UserName + "|\n";
Document.IXATTR += "ATTRIBUTES ZDUMMY|EXT_PROFILE|CC|" +
Document["Group"] + "|\n";
On the VIM side , Insert the following entry into table J_6NGTE26 using transaction SE16:
Remark: If a different RFC Mode should be used then the parameter value for USE_VR4WFL must be
changed in the script configuration (see details above).
FUNCTION ZFI_OT_VIM_LATE_SCAN_ARCHIVING.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" EXPORTING
*" VALUE(PE_RC) LIKE SY-SUBRC
*" VALUE(PE_MESSAGE) TYPE /IXOS/DC_SP_COLD_REFS-MESSAGE
*" VALUE(PE_NO_RECORDS) TYPE /IXOS/DC_SP_COLD_REFS-NO_RECORDS
*" TABLES
*" PT_DATA STRUCTURE /IXOS/DC_SP_COLD_EXCHANGE
*"----------------------------------------------------------------------
*<<<- Start of Header Block ---------------------------------------->>>*
*-----------------------------------------------------------------------
* Identification
* Title : Opentext: Trigger VIM process after document is archive
* via Enterprise Scan
*
*
* Developer : Shovit Verma
*-----------------------------------------------------------------------
Logic :
a) Loop through the table PT_DATA and collect Scan user name , Archive
information and invoice group that was chosen when scanning .
b) Derive the Archive document type based on the invoice group that was chosen
from table ZFIVIMEXTPROFILE .
c) Derive SAP user id for the Windows user from table ZFIVIMOPTEXT02.
e) Collect the DP document number that is returned from above function call and
register in table ZFIVIMREGISTER
Table ZFIVIMREGISTER
The groups configured in Enterprise Scan need to be mapped to ArchiveLink document types and the ICC
flag set if the document type is used for ICC:
The external user (Windows account of scan user) must be mapped to an existing SAP user:
The freight amount from the invoice will be collected at header and will be populated into GL Account in MIRO
.
In order to auto populate GL account tab during background posting , function module
ZFI_OT_VIM_BAPI_EXIT_PO is configured in the user exit as shown
Maintain the function ZFI_OT_VIM_BAPI_EXIT_PO is user exit table /PTGWFI/Z_CONST table via SM30 as
shown below
FUNCTION ZFI_OT_VIM_BAPI_EXIT_PO.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(INDEX_HEADER) TYPE /OPT/VIM_1HEAD OPTIONAL
*" TABLES
*" INDEX_ITEM STRUCTURE /OPT/VIM_1ITEM OPTIONAL
*" ITEMDATA STRUCTURE BAPI_INCINV_CREATE_ITEM
*" ACCOUNTINGDATA STRUCTURE BAPI_INCINV_CREATE_ACCOUNT OPTIONAL
*" GLACCOUNTDATA STRUCTURE BAPI_INCINV_CREATE_GL_ACCOUNT OPTIONAL
*" MATERIALDATA STRUCTURE BAPI_INCINV_CREATE_MATERIAL OPTIONAL
*" TAXDATA STRUCTURE BAPI_INCINV_CREATE_TAX OPTIONAL
*" WITHTAXDATA STRUCTURE BAPI_INCINV_CREATE_WITHTAX OPTIONAL
*" VENDORITEMSPLITDATA STRUCTURE BAPI_INCINV_CREATE_VENDORSPLIT
*" OPTIONAL
*" CHANGING
*" VALUE(HEADERDATA) LIKE BAPI_INCINV_CREATE_HEADER STRUCTURE
*" BAPI_INCINV_CREATE_HEADER OPTIONAL
*" VALUE(ADDRESSDATA) LIKE BAPI_INCINV_CREATE_ADDRESSDATA
*" STRUCTURE BAPI_INCINV_CREATE_ADDRESSDATA OPTIONAL
*"----------------------------------------------------------------------
*<<<- Start of Header Block ---------------------------------------->>>*
*-----------------------------------------------------------------------
* Identification
* Title : OpenText: Function module used in the BAPI exit for PO
Logic:
If freight amount exist on the invoice then build up the GL accounting line in following manner
b) Derive cost center from table ZFIVIMOPTCOST based on the company code
c) Tax code Derive from the first line item of the regular invoice line
d) Tax Jurisdiction If country ( based on the company code form invoice header ) is
applicable for tax jurisdiction then derive the tax jurisdiction from cost center table
( CSKS with controlling area = 1000)
FUNCTION ZFI_OT_VIM_BUYER_ROLE_PRICE.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(BLOCK_REASON) TYPE /PTGWFI/F_BCT-ZBLKRSN
*" REFERENCE(OBJTYPE) TYPE SWETYPECOU-OBJTYPE
*" REFERENCE(OBJKEY) TYPE SWEINSTCOU-OBJKEY
*" EXPORTING
*" REFERENCE(INITIAL_ACTOR) LIKE /PTGWFI/F_BCT-ZINIACT
*" EXCEPTIONS
*" NO_ACTOR_FOUND
*"----------------------------------------------------------------------
*<<<- Start of Header Block ---------------------------------------->>>*
*-----------------------------------------------------------------------
* Identification
* Title : OpenText: Determine the initial actotr for price variance
* If Drop ship PO then CS Specialist else its regular Buyer
FUNCTION ZFI_OT_VIM_BUYER_ROLE_QTY.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" REFERENCE(BLOCK_REASON) TYPE /PTGWFI/F_BCT-ZBLKRSN
*" REFERENCE(OBJTYPE) TYPE SWETYPECOU-OBJTYPE
The inbox day is calculated from the time a workitem appears in one’s inbox .
Text objects ( mentioned below for various stages ) needs to e configured manually in SO10. The text object
appears in the email body before the invoice list information
Text ZREMINDERS_DP is configured for invoices that are in DP (document processing ) stage
Text ZREMINDERS_AP_NPO is configured for invoices that are in NPO Approval/Coding stage
Text ZREMINDERS_BLK is configured for invoices that are in Blocking Stage (Header Level )
Text ZREMINDERS_BLK is configured for invoices that are in Blocking Stage (Line Level )
Following fields are supplied for the invoice list information when sending reminder notification
The format of the invoice list information was enhanced ( for better formatted output of invoice list in the email
body )
FUNCTION ZFI_OT_VIM_FORMAT_REM_EMAIL.
*"----------------------------------------------------------------------
*"*"Local Interface:
*" IMPORTING
*" VALUE(CALLING_PROGRAM) OPTIONAL
*" TABLES
*" MESSAGE_HEADER STRUCTURE SOLI OPTIONAL
*" MESSAGE_BODY STRUCTURE SOLI OPTIONAL
*"----------------------------------------------------------------------
The function formats the invoice list information in HTML format ( which presents invoice in a much better
format compared to RAW text format )
Also in OT standard function /OPT/VIM_NOTIF_SEND_EMAIL the format was set to ‘HTM” instead of ‘RAW
as shown below
ZFIRP_OT_VIM_EXT_IIC_VAR_COPY
This program is intended to be run by a user who can maintain layout for ICC VIM Cockpit . Its not necessary
to adjust layouts and a user can adjust the layout himself .
However , there could be cases where one can decide to set up a global layout and have it applicable for
everyone .
An admin would need to maintain layouts at each exception ( overall 140 + exceptions and that would mean
140+ layouts ) if one wants a global layout . This will be painful job if one were to do . Thus the program
ZFIRP_OT_VIM_EXT_IIC_VAR_COPY eases that effort .
First one can maintain the layout via Admin transaction /OPT/VIM_IIC_ADM.
1) Document Processes
2) Posted PO Invoices
Thereafter call the program ZFIRP_OT_VIM_EXT_IIC_VAR_COPY and provide the layout name of 1 st level
node and specify the Exception Group ( 1 = Document processes , 4 = Posted PO Invoices ) .
Executing the program lets the layout at 1st node level trickle down to all exceptions ( .ie to 2 nd level node )
Thus you maintain maximum 2 layouts ( at Document Processes and another at Posted PO Invoices level )
and have those layouts trickle down to all 140+ exceptions .
06-AUG-2013 Issue 8865/INC0054436 – Adding security authorizations to assign a Z-tcode (ZFI0152) to this
program. Security should only be needed for copying down the layouts so the following should be used:
Object: S_ALV_LAYO
ACTVT=23;
You can archive the DP invoices and the reporting data from Central Reporting.
Note: You must first archive all DP invoices from all connected SAP systems before you run the archiving of
the reporting data.
To archive DP invoices:
3. Follow the SAP standard archiving processes for the archive object /OPT/DOC.
Note: You must first archive all DP invoices using the archive object /OPT/DOC
from all connected SAP systems before you run the archiving of the reporting
data.
2. Use the archiving object /OPT/REP that is provided with VIM 5.2 SP1 to archive
the VIM Central Reporting information.
Note: Standard Archiving functions will be used at CAREFUSION. No extensions are identified in this
section. For More information of Archiving Open Text IM data archiving, please refer to VIM 6.0
Administration guide.
This section contains terms used in this FDD and business meaning of the terms from SAP IM perspective.
Term Meaning
Integrated Invoice This is a workplace (inbox) for AP processor or other users where they can access
Cockpit invoices to be processed.
Work item An item in the invoice cockpit of the SAP inbox that can be used to access invoices and
process invoice exceptions.
Dashboard Open Text user interface used to resolve invoice exceptions for an invoice.
Dashboard enables users to take necessary actions and view process log.
Role Roles identify users as having a specific function and being able to execute specific
actions related to the role.
OpenText VIM Roles are not to be confused with SAP Roles and Authorizations.
VIM Roles determine who receives work items and what they can do within those work
items.
SAP Roles determine what transactions a user has access to and limits what can be
done within that transaction.
COA Chart of Authority Infrastructure developed by Open Text to maintain approver hierarchy.
User Map Table Open Text table to maintain list of users who can access approval workitems.
Open Text maintains internal usermap id which will be mapped to SAP user id or
Enterprise Portal ID or Email ID.
ICC Application An ICC invoice application bundles all settings that are needed to process invoices of a
certain kind, e.g. Rush and Regular Invoices or which fields have to be extracted by
which extraction method, or which fields should be visible in the Validation Client.
ICC Validation The Validation Client is a Windows program that is used by a clerk to check and correct
Client data that have been extracted automatically and to capture additional fields that could
not be read automatically. The corrected and completed data are then passed on to
Vendor Invoice Management.
VAN This is OpenText Status Reporting tool. Also called as SAP Invoice Management
Analytics or VIM Analytics.
2.0 COMMENTS
N/A