Shipping lock fix –> WSH_DELIVERY_DETAILS Column has leading or trailing spaces

本文提供了一段PL/SQL脚本,用于检测发货详情表中存在前后空格的字段,帮助解决因空格引起的发货系统无法正常工作的问题。

SO# 无法 Shipping,有时由于发货表列内容左右带空格导致。

 

 

set serveroutput onsize 1000000

 

 

set verify off

 

 

 

 

ACCEPT DEL_DETAIL_ID NUMBERPROMPT'PLEASE ENTER DELIVERY_DETAIL_ID : '

 

 

 

 

DECLARECURSOR C1 isSelect column_name from fnd_columns Where table_id =(Select table_id from fnd_tables Where table_name ='WSH_DELIVERY_DETAILS');

 

 

 

 

Cnt NUMBER(10):= 0;

 

 

DynSql VARCHAR2(1000);

 

 

DelDetId WSH_DELIVERY_DETAILS.Delivery_Detail_Id %TYPE;

 

 

 

 

BEGIN

 

 

dbms_output.put_line('Script to identify the problematic fields :');

 

 

dbms_output.put_line('============================================');

 

 

 

 

FOR i IN C1 LOOP

 

 

 

 

DelDetId := &DEL_DETAIL_ID;

 

 

DynSql :='SELECT COUNT(*) FROM WSH_DELIVERY_DETAILS ';

 

 

DynSql := DynSql || 'WHERE NVL(LENGTH(LTRIM(RTRIM(' || i.column_name || '))), 0) <> ';

 

 

DYNSql := DynSql || ' LENGTH(' || i.column_name || ') ';

 

 

DynSql := DynSql || 'AND Delivery_Detail_Id = ' || DelDetId;

 

 

 

 

EXECUTEIMMEDIATE DynSql INTO Cnt;

 

 

 

 

IF( cnt > 0 )THEN

 

 

  dbms_output.put_line('Field ' ||i.COLUMN_NAME|| ' for delivery detail '|| DelDetId || ' has leading or trailing spaces');

 

 

 

 

ENDIF;

 

 

 

 

ENDLOOP;

 

 

 

 

dbms_output.put_line('Script completed succefully.......');

 

 

 

 

END;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值