The agreements from a Smart Materials project are loaded only when the project default ZI_E_POSER is set to Y and an EcoSys project name is assigned to project default ZI_E_PROJ. Agreements which are approved and have an EcoSys account code assigned at the header are posted to EcoSys. The following sequence of operations are executed each time the service runs in the background.
Load Agreement Headers to staging table
The service loads all the agreement headers from Smart Materials whose line items are mapped with account codes pulled from EcoSys into staging table. The service pulls all records from the view MVW_ECO_PO_HEADERS and posts to M_ECO_PO_HEADER_STAGINGS table. If an agreement in Smart Materials has multiple supplements and is loading for the first time, then agreement header details at highest supplement only will be loaded to staging table.
Load Agreement Line Items to staging table
The service loads all the eligible agreement line items from Smart Materials to staging table. If an agreement in Smart Materials has multiple supplements and is loading for the first time, then all agreement line items of highest supplement will be loaded from view MVW_ECO_PO_LINE_ITEMS to staging table M_ECO_PO_LI_STAGINGS. Every time service loads, only modified and new line items are loaded into staging table. If any line item does have an account code assigned then that line item is assigned with header level account code.
Load Agreement Header other costs to staging table
If the project default ZI_E_PHOC is set to Y, the other costs at Agreement Header level are loaded into M_ECO_PO_LI_STAGINGS table. At EcoSys, all the costs are calculated at line item level. Though agreements in Smart Materials have other costs at header, they will be loaded to line item staging table and posted as additional line items to EcoSys.
Load Agreement Line Item other costs to staging table
If the project default ZI_E_PLOC is set to Y, the other costs at agreement line items are loaded into M_ECO_PO_LI_STAGINGS table. The other costs at agreement line item will be sent as additional line items to EcoSys.
Posting Agreement Headers to EcoSys
Once loading of staging tables is completed, the service starts Posting Agreement details into EcoSys. The service posts all the agreements headers from the staging table M_ECO_PO_HEADER_STAGINGS. If the record is successfully posted to EcoSys, the STATUS column of that record in staging table will be updated to Y.
Posting Agreement Line Items and Other Costs to EcoSys
Once Posting of Agreement headers is completed, all the Line Items and other costs loaded in staging table M_ECO_PO_LI_STAGINGS will be posted into EcoSys. If a record is successfully posted to EcoSys, the STATUS column of that record will be updated to Y.
Updating the Frequency of the Service
The service then gets the value of the DBA setting ECO_PO_FREQ and updates the repeat_interval attribute of the job which is initiating this service.