OK so you now have the FTP working (using the static route) but the stored procedure is not working?
If you have the Data Integrator product, then you can execute a stored procedure at almost any part of the FTP interface, in a tcl proc. So using this method, the stored procedure can be called from within the start to finish of the FTP transaction, making it part of the transaction.
If not, and you are using the database_outbound protocol to invoke a stored procedure, then:
1) the stored procedure portion of the interface would be a second, separate outbound activity (additional route detail). Meaning – that there would be one input thread (FTP) and two output threads (FTP, DB). The implication is that the FTP portion could fail but the stored procedure could succeed or vice versa. This is something to consider.
2) you do need to be sending something to that database outbound thread, just to get it to trigger the database call.
The database_outbound protocol requires you to configure it by selecting the database and table (or view) that will be the target, even if you are executing a stored procedure that has no arguments, even if you don’t need to send any data at all to the database.
So there are different approaches to this situation – here is one suggestion:
– have the database admin create a view that holds the minimum columns necessary
– use the Cloverleaf Database Schema Configurator to read that view (and build a VRL for that view)
– build a simple translator that ignores the input data (file) and just copies literal strings to the output (select your VRL for the output format), just enough to meet the requirements of the stored procedure
– configure your outbound thread to reference that view, and then build the stored procedure call. You can use the data items from your translator (by referring to them with the syntax) or by hardcoding literal string values in the stored procedure call.
Peter Heggie
PeterHeggie@crouse.org