Saya mencoba memanggil pernyataan sql ini

 let sql: string = 'BEGIN :ret := PAC_AGE_WEB.FUN_ATIVA_FAT_ELETRONICA_AEL(:i_cod_un_cons, :i_num_cli, :i_cpu_os, :i_seq_oper_os, :i_seq_ger_os); END;';
  //
  let bindvars: oracledb.BindParameters = {
    i_cod_un_cons: Number.parseFloat(numeroUc),
    i_num_cli: Number.parseFloat(numeroCliente),
    i_cpu_os: codigoCpu.toString(),
    i_seq_oper_os: Number.parseFloat(numeroSeqOper),
    i_seq_ger_os: Number.parseFloat(numeroSeqGer),
    result: { type: oracledb.STRING, dir: oracledb.BIND_OUT, maxSize: 4000 }
  };
  //
  super.execute(sql, bindvars, autoCommit, connection, (errorAtivaFaturaEletronica, resultAtivaFaturaEletronica) => {

Dan saya mendapatkan kesalahan berikut => Kesalahan: ORA-01036: nama/nomor variabel ilegal errorNum: 1036, offset: 0

Tipe variabelnya adalah: i_cod_un_cons: mengambang,
i_num_cli: mengapung,
i_cpu_os: string,
i_seq_oper_os: mengapung,
i_seq_ger__os: mengapung

0
Emmanuel Oliveira 1 Juni 2020, 22:28

1 menjawab

Jawaban Terbaik

Diselesaikan dengan mengubah ':ret' menjadi ':result'.

0
Emmanuel Oliveira 10 Juni 2020, 14:52