Good Morning -
I realize it's a long shot - Smart Connect out of the box does not have a node where we create a manual AP Payment and apply it to existing Vendor Vouchers (single or multiple).
eOne advises clients to purchase the Presidio AP Apply DLL and use it as a post document task.
We purchased it and use it quite nicely with the limitation of creating a single payment for every voucher.
However, since it is a post document task - smart connect creates the manual payment and applies the payment to a single voucher.
We have been advised that the .Net script used to initialize the DLL and apply the document can be modified to "loop" through the source file and apply a large payment to multiple vouchers. In our case we need to post a large corporate credit card payment to the bank register and we need to apply to 100+ vouchers in our system.
Here's the script I am using for a single apply - I am not a programmer - can this be modified to "loop" and if so, how?
dim success as boolean
dim errorResult as boolean
dim errorCode as integer
dim responseMessage as string
dim licenseKey as string
dim serverInstance as string
dim userConnectType as string
dim userID as string
dim userPassword as string
dim companyDatabase as string
dim documentType as string
dim apApplyTest as new Precipio.APApply.Import()
licenseKey = "mmxxcc" 'Retrieved from Precipio Services
serverInstance = "mmmm"
userConnectType = "SQL" 'SQL or GP
userID = "sa"
userPassword = "xxxxxx"
companyDatabase = "dddd"
'Initialize the license
success = apApplyTest.Initialize(licenseKey, serverInstance, userConnectType, userID, userPassword, responseMessage)
'Display a message if the initialize fails. Only use this if running manually
if not success then
MessageBox.Show("Initialize: " & responseMessage)
return false
end if
'Apply the Payment that was just integrated to a voucher
documentType = "PAYMENT" 'PAYMENT or CREDIT
success = apApplyTest.ApplyPayment(companyDatabase, _VENDORID, Convert.ToDateTime(_DATE), documentType, GlobalRollingColumn, _INVOICENUMBER,_AMOUNT , errorResult, errorCode, responseMessage)
if not success then
MessageBox.Show("Apply: " & responseMessage)
return false
else if errorResult then
MessageBox.Show("Apply: " & responseMessage)
return false
end if
apApplyTest = nothing
return true