INV_PREPROCESS_SCAN - 帮助将 PLSQL 连接到 Oracle Mobile

INV_PREPROCESS_SCAN - Help connecting PLSQL to Oracle Mobile

有没有人使用过 PL SQL class INV_PREPROCESS_SCAN 以及如何从 Oracle Mobile 调用它?有一些在线文档详细介绍了 class 本身及其功能,但 none 建议如何确保它正确链接到 Oracle Mobile。

问题涉及扫描条形码并使用条形码信息填充 SQL table。目前 table 在扫描条形码后仍为空。

扫描条形码时我尝试调用的过程:

CREATE OR REPLACE PACKAGE BODY APPS.INV_PREPROCESS_SCAN AS

PROCEDURE process_scan(x_return_status     OUT nocopy VARCHAR2,
           x_processed_value   OUT nocopy VARCHAR2,
           p_current_page_name IN  VARCHAR2,
           p_scanned_value     IN  VARCHAR2) IS
  g_sql_errm               VARCHAR2(4000);
  g_sql_code              VARCHAR2(500);               

BEGIN
 INSERT INTO dummy(info, column2)
 VALUES ('example', 'example2 ');
 COMMIT;

 INSERT INTO dummy(info, column2)
 VALUES (p_current_page_name, p_scanned_value);
 COMMIT;

 x_return_status := 'S';
 x_processed_value := p_scanned_value;

 EXCEPTION
  WHEN OTHERS THEN
     g_sql_errm := SUBSTR(SQLERRM,1,500);
     g_sql_code := SUBSTR(SQLCODE,1,500);
     INSERT INTO dummy(info, column2)
     VALUES (g_sql_errm, g_sql_code);
     COMMIT;
END;

END INV_PREPROCESS_SCAN;
/

Oracle 移动日志显示条形码被正确读取,但 SQL table 仍然为空。

如有任何帮助,我们将不胜感激

已通过将扫描仪的前缀更改为 Ascii 值 92 解决了该问题。 这是通过打开 default_key.ini 文件并更改:

来完成的
DATASTREAMINDICATOR:28

DATASTREAMINDICATOR:92

确保你反弹服务器。

使用此设置打开 Oracle Mobile,在输入屏幕上确保 "ctrl" 和“\”在您输入信息时按住。按回车键,该值现在将可见。数据现在应该出现在您的数据库中。