【发布时间】:2019-11-06 19:25:42
【问题描述】:
我遇到了一个必须在表中插入记录的 SQLRPGLE 程序的问题。
我一直在使用 strdbg 命令调试我的程序,当我尝试将该值插入整数字段时,我发现问题是由我的数据结构中名为 Mes 的压缩十进制字段引起的。
源数据结构定义(DS中的第一个字段是假设需要转换的字段):
D DataDS DS QUALIFIED TEMPLATE
D Mes 6P 0
D Unidad 2P 0
D Subunidad 3P 0
D Grupopas 8P 0
D Productor 8P 0
D Asegurado 9P 0
. . .
. . .
. . .
目标字段是一个整数。
P Exportar...
P B
D PI
D data DS LIKEDS(DataDS)
/free
ClrBI();
CLEAR data;
EXEC SQL DECLARE B1 CURSOR FOR
SELECT MES,UNIDAD, SUBUNIDAD, GRUPOPAS,
PRODUCTOR, ASEGURADO, RAMA, TIPO_MOVIM,
SUCURSAL,IFNULL(FACULTATIV,' '), CONDIC_IVA,
UNIDAD_FC, SUBUNID_FC, GRUPOPR_FC,
MATRICULA, CANALCOBRO, IFNULL(CANALCOBRX,' '),
PRIMACOB, PREMIOCOB, DEREMICOB,
RECADMCOB, RECFINCOB, IVACOB,
PER_IVACOB, ACR_IVACOB, ISSCOB,
INTERNOCOB, PER_IBRCOB, COMISICOBR,
COMISIAGEN,COMISIORGA,COMISIOTRS
COMISITOT
FROM BICOBRANZA
WHERE MES = :mes;
EXEC SQL OPEN B1;
EXEC SQL FETCH NEXT FROM B1 INTO :data;
DOW SQLCOD = 0;
SetBI(data);
CLEAR data;
EXEC SQL FETCH NEXT FROM B1 INTO :data;
ENDDO;
EXEC SQL CLOSE B1;
/end-free
P E
这是我第一次看到这样的错误。 以前有人遇到过这个问题吗?我什至不知道从哪里开始。
提前致谢。
【问题讨论】:
-
错误是什么? SQL代码? SQLSTATE?
-
我没有看到插入,哪个语句导致了错误?
-
我还想查看 BICOBRANZA 的相关字段,因为这是您尝试插入数据结构的内容。
标签: sql db2 ibm-midrange rpgle