Jetzt verstehe ich langsam deine Probleme. Du kannst die ODBC-Aufrufe nicht als "embedded SQL" definieren ?
Dann ist natürlich der Aufwand, SQL im Programm zu verwenden genauso gigantisch wie mit Sockets zu experimentieren.
Von SQLCreateHandle bis Fetch, BindColumn, BindParam usw. muss alles manuell durchgeführt werden.
Ich rate dir massiv davon ab !!!
Versuche lieber, deinen COBOL-Compiler auf dem PC zu "embedded SQL" zu bewegen !!!
Notfalls musst du auf WebSphere zurückgreifen.

Ich dachte bisher, du kannst SQL direkt verwenden, aber so ....

Der Austausch von Parametern in jede Richtung stellt kein Problem dar.
Die Prozeduren kannst du auch auf der AS/400 mittels RUNSQLSTM bzw. REXX definieren, da das auf jedem System ein einmaliger Vorgang ist.
Klar kann das Client-Pgm dies immer wieder durchführen, Fehler (Prozedur schon da) sollten aber ignoriert werden.

Zu Verwendung der SQLxxx-Routinen schau mal ins Handbuch SQLCLI-Interface, aber wie gesagt, tus lieber nicht.