In continuation with theme Electronic Files in SAP Business One I want to explain in this blog how to update/create payment file using Electronic File Manager.
First you should know that although the data source as a Crystal Payment Wizard Results are already provided within BFP format you can always update the data source in case you need to provide some specific information in your payment file. To do that you should add a new Crystal report with data you need to provide in your file: Source -> Add -> RPT:
The other possibility is to add your specific fields to the Payment Wizard Results. Then the best way is to save the original data source to your folder and update the RPT in the Crystal Reports:
And then choose the Update after you have your changes saved. However, in case there are updates in the Payments Wizard Results provided by SAP you will not get them automatically.
Once you have your data source ready you can move further for the updating/creating mapping with your target file. Let me explain some tricks on example of Remittance information node. The node can look differently in different file formats, but let’s discuss it like this one:
As you see the Remittance Information can be Unstructured and Structured. Bank payment files provided by SAP for B1 usually have mapped Unstructured information. You can easily see that: the node has sign that it has mapping:
Once you highlight the node you can also see the function that calculates the value from different fields like Business Partner Reference No, Document Payment Amount and payment currency, Document posting date, Document Remarks and Document Payment reference. The function node-concat will check relevant field information from all documents that are involved into the payment. Example: the following payment in the SAP Business One
will have following remittance information
9663/…/GBP 90.00/GBP 3.00/2021-08-05/2021-08-14/Based on Purchase Orders 715. Based on Goods Receipt PO 725./Based on Purchase Orders 679. Based on Goods Receipt PO 702./…/…/
and then cut to have 140 characters:
9663/…/GBP 90.00/GBP 3.00/2021-08-05/2021-08-14/Based on Purchase Orders 715. Based on Goods Receipt PO 725./Based on Purchase Orders 679.
Cutting the value to 140 characters is caused by the condition of this node that you can find in the validation tab for this node:
You can update the mapping in case the existing one does not answer bank/vendor/etc. requirements. Let’s look to the example, where you need to provide information from document Remarks only in case there is no value in the document Vendor Ref.No.
Then the mapping can be set as following:
Condition No 1 (with function regex-find(node-concat(%BPReferenceNum,'/'), "\\d+",1)):
Condition No 2 (with function regex-find(node-concat(%DocumentRemarks,'/'), "\\d+",1)):
And Else Condition:
You can also map Structured Remittance Information. However, in case you want to provide this information for every document, please, check the if the information can be provided in the multiple way. This can be found in the Validation tab for every specific node:
In case multiple occurrences allowed then do not forget to link Sequence to the relevant Source field like in this picture:
Please, do not forget to save your file and import that to your Business One.
Unfortunately, the file generated after will always have the same name as the option, to create payment files (using BPP format projects) by dynamic naming convention, is not available currently.
I hope you find this blog helpful and I look forward to hearing your feedback on your experience with EFM, be sure to leave your comment below.