Here is the Standard Operating Procedure (SOP) for the INT6105b (Monthly Reporting) integration.
System Name: INT6105b (Monthly Reporting) Budget Data Inbound from BRAINs
Purpose: To import monthly "Reporting Forecast" budget data from ProfitSword/BRAINS into Workday.
Source: ProfitSword/BRAINS (via SFTP).
Frequency: Monthly (processing "6-period/half year" forecast files: 01-06, 07-12).
Integration Type: Workday Studio Assembly (Custom).
Import_Budget_High_Volume_Request (Financial Management v41.0) The integration relies on specific attributes configured on the Integration System to determine where data is loaded.
| Attribute Name | Description | Source ID (WID) |
| Reporting Forecast Plan Structure | The Budget Structure ID for the forecast. | 3739acd8b0014f60a0c3924f0fd6206e |
| Reporting Forecast Plan Name | The specific Budget Plan ID to load data into. | 17a21ad1f13e1000150c8a0bb8b30aba |
Integration Maps:
The system uses Internal-to-External maps to translate legacy codes to Workday Reference IDs.
Translation Code to Cost Center: Maps the TRANSLATION column to a Cost Center WID.
Company Translation Code to Outlet: Maps a concatenated Company-Translation string to an Outlet WID.
Step 1: Retrieval & Initialization
The integration triggers via the Monthly_Reporting service.
It executes the Parms2 mediation, setting the run mode to 'Reporting Forecast'.
The file is retrieved via the INT6105b_Get_File retrieval service.
Step 2: CSV Parsing & Mapping (Apply_Maps.xsl)
TRANSLATION is present (and not 'TRA000'), the system performs a reverse lookup against the 'Translation Code to Cost Center' map. Otherwise, it uses the raw COST_CENTER value TRANSLATION matches specific prefixes (e.g., 'TRA200'), it performs a reverse lookup against 'Company Translation Code to Outlet' using the key format COMPANY-TRANSLATION Step 3: Currency Merging (Merge_Currency.xsl)
The integration runs a Workday Report Company_Currencies (INT6105 - Get Company Currency).
Company_Ref_ID from the incoming file against the report data to assign the correct Company_Cur_ID (Currency) to the transaction row Step 4: SOAP Generation (Create_Group_XML_2.xsl)
This step creates the Import_Budget_High_Volume_Request.
COMPANY, POSTING_INTERVAL, LEDGER_ACCOUNT, COST_CENTER, OUTLET, SPEND_CODE, REVENUE, JOB_TITLE, MEAL_PERIOD to aggregate linesINCREMENTAL_ADD_ONLYPOSTING_INTERVAL (e.g., 202301) is parsed. The first 4 digits become the Year, and the last 2 digits map to the YE_Dec_PXX_Mon ID (e.g., '01' maps to YE_Dec_P01_Jan) Ledger Account Logic:
If LEDGER_ACCOUNT starts with "ST", it maps to parent type Statistics.
HHM Step 5: Submission & Verification
WorkdayOutSoapThe integration enters a DoWhile loop to poll the status of the import process until it returns 'Completed', 'CompletedWithErrors', or 'Failed'.
COMPANY
MEMO
POSTING_INTERVAL (Format: YYYYMM)
LEDGER_ACCOUNT
COST_CENTER
SPEND_CODE
REVENUE
JOB_TITLE
OUTLET
MEAL_PERIOD
BANK_ACCOUNT (Ignored in mapping)
INTERCOMPANY
TRANSLATION (Used for Cost Center/Outlet lookups)
DEBIT
CREDIT
| Scenario | System Behavior | Resolution |
| Empty File | Logs "No file found or empty file. Please investigate." | Verify file presence on SFTP and file size. |
| Missing Map | If a Translation code is not found in the integration map, the system defaults to using the raw | If bad data loads, check the Integration Maps for missing keys. |
| SOAP Failure | If the SOAP call fails, it routes to | Check the Process Monitor for the specific Web Service error (e.g., Period Closed, Invalid Worktag). |
Integration Maps: Ensure Translation Code to Cost Center and Company Translation Code to Outlet are updated when new codes are added in Brains/ProfitSword.
YE_Dec naming conventions Create_Group_XML_2.xsl must be updated.