forked from CITKParus/P8-ExchangeService
Корректировка алгоритма обновления места хранения ОС по штрих-коду места хранения импортированного из ТСД
This commit is contained in:
parent
0c1c3e668a
commit
bb5840f37d
@ -56,13 +56,6 @@ create or replace package UDO_PKG_EXS_INV as
|
|||||||
NEXSQUEUE in number -- Ðåãèñòðàöèîííûé íîìåð îáðàáàòûâàåìîé ïîçèöèè î÷åðåäè îáìåíà
|
NEXSQUEUE in number -- Ðåãèñòðàöèîííûé íîìåð îáðàáàòûâàåìîé ïîçèöèè î÷åðåäè îáìåíà
|
||||||
);
|
);
|
||||||
|
|
||||||
/* Ýëåêòðîííàÿ èíâåíòàðèçàöèÿ - ñîõðàíåíèå ðåçóëüòàòîâ èíâåíòàðèçàöèè (ÄÅÌÎ, óáðàòü!!!!) */
|
|
||||||
procedure SAVESHEETITEM_TMP
|
|
||||||
(
|
|
||||||
NIDENT in number, -- Èäåíòèôèêàòîð ïðîöåññà
|
|
||||||
NEXSQUEUE in number -- Ðåãèñòðàöèîííûé íîìåð îáðàáàòûâàåìîé ïîçèöèè î÷åðåäè îáìåíà
|
|
||||||
);
|
|
||||||
|
|
||||||
end;
|
end;
|
||||||
/
|
/
|
||||||
create or replace package body UDO_PKG_EXS_INV as
|
create or replace package body UDO_PKG_EXS_INV as
|
||||||
@ -582,7 +575,7 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
/* Ñ÷èòûâàåì "Íîìåð" (ïàðàìåòð îòáîðà) */
|
/* Ñ÷èòûâàåì "Íîìåð" (ïàðàìåòð îòáîðà) */
|
||||||
SREQNUMBER := UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SNUMBER);
|
SREQNUMBER := UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SNUMBER);
|
||||||
/* Ñ÷èòûâàåì "Äàòó" (ïàðàìåòð îòáîðà) */
|
/* Ñ÷èòûâàåì "Äàòó" (ïàðàìåòð îòáîðà) */
|
||||||
DREQDATE := TO_DATE(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SDATE), 'yyyy-mm-dd');
|
DREQDATE := TO_DATE(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SDATE), 'YYYY-MM-DD');
|
||||||
/* Êîíòðîëü èíäåòèôèêàòîðà óñòðîéñòâà ïî ëèöåíçèè */
|
/* Êîíòðîëü èíäåòèôèêàòîðà óñòðîéñòâà ïî ëèöåíçèè */
|
||||||
/* UTL_CHECK_DEVICEID(SDEVICEID => SREQDEVICEID); */
|
/* UTL_CHECK_DEVICEID(SDEVICEID => SREQDEVICEID); */
|
||||||
/* Ïîäãîòàâëèâàåì äîêóìåíò äëÿ îòâåòà */
|
/* Ïîäãîòàâëèâàåì äîêóìåíò äëÿ îòâåòà */
|
||||||
@ -703,7 +696,11 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
/* Ñîçäà¸ì ïðîñòðàíñòâî èì¸í äëÿ îòâåòà */
|
/* Ñîçäà¸ì ïðîñòðàíñòâî èì¸í äëÿ îòâåòà */
|
||||||
XGETSHEETITEMSRESPONSE := UTL_CREATENODE(XDOC => XDOC, STAG => SGETSHEETITEMSRESPONSE, SNS => STSD);
|
XGETSHEETITEMSRESPONSE := UTL_CREATENODE(XDOC => XDOC, STAG => SGETSHEETITEMSRESPONSE, SNS => STSD);
|
||||||
/* Îáõîäèì òèïû äîêóìåíòîâ ñâÿçàííûå ñ ðàçäåëîì "Ýëåêòðîííûå èíâåíòàðèçàöèè" */
|
/* Îáõîäèì òèïû äîêóìåíòîâ ñâÿçàííûå ñ ðàçäåëîì "Ýëåêòðîííûå èíâåíòàðèçàöèè" */
|
||||||
for REC in (select DECODE(T.INVPACK, null, O.PLACE_MNEMO, OP.PLACE_MNEMO) SSTORAGEMNEMOCODE,
|
for REC in (select T.RN NRN,
|
||||||
|
T.COMPANY NCOMPANY,
|
||||||
|
T.BARCODE SBARCODE,
|
||||||
|
T.IS_LOADED NIS_LOADED,
|
||||||
|
DECODE(T.INVPACK, null, O.PLACE_MNEMO, OP.PLACE_MNEMO) SSTORAGEMNEMOCODE,
|
||||||
DECODE(T.INVPACK, null, O.BARCODE, OP.BARCODE) SOBARCODE,
|
DECODE(T.INVPACK, null, O.BARCODE, OP.BARCODE) SOBARCODE,
|
||||||
T.INVPERSONS NINVPERSONS,
|
T.INVPERSONS NINVPERSONS,
|
||||||
DECODE(PS.RN,
|
DECODE(PS.RN,
|
||||||
@ -759,6 +756,14 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XITEM, NEWCHILD => XITEMNUMBER);
|
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XITEM, NEWCHILD => XITEMNUMBER);
|
||||||
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XITEM, NEWCHILD => XQUANTITY);
|
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XITEM, NEWCHILD => XQUANTITY);
|
||||||
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XGETSHEETITEMSRESPONSE, NEWCHILD => XITEM);
|
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XGETSHEETITEMSRESPONSE, NEWCHILD => XITEM);
|
||||||
|
/* Âûñòàâèì äàòó âûãðóçêè â òåðìèíàë äëÿ ïîçèöèè âåäîìîñòè èíâåíòàðèçàöèè */
|
||||||
|
P_ELINVOBJECT_BASE_UPDATE(NCOMPANY => REC.NCOMPANY,
|
||||||
|
NRN => REC.NRN,
|
||||||
|
DUNLOAD_DATE => sysdate,
|
||||||
|
DINV_DATE => null,
|
||||||
|
NINVPERSONS => REC.NINVPERSONS,
|
||||||
|
SBARCODE => REC.SBARCODE,
|
||||||
|
NIS_LOADED => REC.NIS_LOADED);
|
||||||
end loop;
|
end loop;
|
||||||
/* Îáîðà÷èâàåì îòâåò â êîíâåðò */
|
/* Îáîðà÷èâàåì îòâåò â êîíâåðò */
|
||||||
CRESPONSE := UTL_CREATERESPONSE(XDOC => XDOC, XCONTENT => XGETSHEETITEMSRESPONSE);
|
CRESPONSE := UTL_CREATERESPONSE(XDOC => XDOC, XCONTENT => XGETSHEETITEMSRESPONSE);
|
||||||
@ -849,7 +854,8 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
NVL(UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 4),
|
NVL(UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 4),
|
||||||
NVL(UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 3), UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 2)))) SLOCALITY,
|
NVL(UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 3), UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 2)))) SLOCALITY,
|
||||||
UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 5) SSTREET,
|
UTL_GEOGRAFY_GET_HIER_ITEM(G.RN, 5) SSTREET,
|
||||||
T.ADDR_HOUSE SHOUSENUMBER
|
T.ADDR_HOUSE SHOUSENUMBER,
|
||||||
|
T.BARCODE SBARCODE
|
||||||
from DICPLACE T,
|
from DICPLACE T,
|
||||||
GEOGRAFY G
|
GEOGRAFY G
|
||||||
where T.COMPANY = 136018
|
where T.COMPANY = 136018
|
||||||
@ -866,7 +872,7 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
loop
|
loop
|
||||||
/* Ñîáèðàåì èíôîðìàöèþ ïî ìåñòó õðàíåíèÿ â îòâåò */
|
/* Ñîáèðàåì èíôîðìàöèþ ïî ìåñòó õðàíåíèÿ â îòâåò */
|
||||||
XITEM := UTL_CREATENODE(XDOC => XDOC, STAG => SITEM, SNS => STSD);
|
XITEM := UTL_CREATENODE(XDOC => XDOC, STAG => SITEM, SNS => STSD);
|
||||||
XCODE := UTL_CREATENODE(XDOC => XDOC, STAG => SCODE, SNS => STSD, SVAL => REC.NRN);
|
XCODE := UTL_CREATENODE(XDOC => XDOC, STAG => SCODE, SNS => STSD, SVAL => REC.SBARCODE);
|
||||||
XNAME := UTL_CREATENODE(XDOC => XDOC, STAG => SNAME, SNS => STSD, SVAL => REC.SNAME);
|
XNAME := UTL_CREATENODE(XDOC => XDOC, STAG => SNAME, SNS => STSD, SVAL => REC.SNAME);
|
||||||
XMNEMOCODE := UTL_CREATENODE(XDOC => XDOC, STAG => SMNEMOCODE, SNS => STSD, SVAL => REC.SMNEMOCODE);
|
XMNEMOCODE := UTL_CREATENODE(XDOC => XDOC, STAG => SMNEMOCODE, SNS => STSD, SVAL => REC.SMNEMOCODE);
|
||||||
XLATITUDE := UTL_CREATENODE(XDOC => XDOC, STAG => SLATITUDE, SNS => STSD, SVAL => REC.SLATITUDE);
|
XLATITUDE := UTL_CREATENODE(XDOC => XDOC, STAG => SLATITUDE, SNS => STSD, SVAL => REC.SLATITUDE);
|
||||||
@ -951,17 +957,21 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
SREQROOM PKG_STD.TSTRING; -- Ïîìåùåíèå ðàñïîëîæåíèÿ ÎÑ èç çàïðîñà (ïàðàìåòð ñîõðàíåíèÿ)
|
SREQROOM PKG_STD.TSTRING; -- Ïîìåùåíèå ðàñïîëîæåíèÿ ÎÑ èç çàïðîñà (ïàðàìåòð ñîõðàíåíèÿ)
|
||||||
SREQRACK PKG_STD.TSTRING; -- Ñòåëëàæ ðàñïîëîæåíèÿ ÎÑ èç çàïðîñà (ïàðàìåòð ñîõðàíåíèÿ)
|
SREQRACK PKG_STD.TSTRING; -- Ñòåëëàæ ðàñïîëîæåíèÿ ÎÑ èç çàïðîñà (ïàðàìåòð ñîõðàíåíèÿ)
|
||||||
NELINVOBJECT PKG_STD.TREF; -- Ðåã. íîìåð ïîçèöèè âåäîìîñòè èíâåíòàðèçàöèè
|
NELINVOBJECT PKG_STD.TREF; -- Ðåã. íîìåð ïîçèöèè âåäîìîñòè èíâåíòàðèçàöèè
|
||||||
NDICPLACE PKG_STD.TREF; -- Ðåã. íîìåð ìåñòà õðàíåíèÿ
|
SDICPLACEBARCODE PKG_STD.TSTRING; -- Øòðèõ-êîä ìåñòà õðàíåíèÿ gñîãëàñíî âåäîìîñòè
|
||||||
NINVENTORY PKG_STD.TREF; -- Ðåã. íîìåð ÎÑ (êàðòî÷êè "Èíâåíòàðíîé êàðòîòåêè")
|
NINVENTORY PKG_STD.TREF; -- Ðåã. íîìåð ÎÑ (êàðòî÷êè "Èíâåíòàðíîé êàðòîòåêè")
|
||||||
NCOMPANY PKG_STD.TREF; -- Ðåã. íîìåð îðãàíèçàöèè
|
NCOMPANY PKG_STD.TREF; -- Ðåã. íîìåð îðãàíèçàöèè
|
||||||
|
NPROPERTY PKG_STD.TREF; -- Ðåã. íîìåð ÄÑ ïîçèöèè âåäîìîñòè èíâåíòàðèçàöèè äëÿ õðàíåíèÿ êîììåíòàðèÿ
|
||||||
SERR PKG_STD.TSTRING; -- Áóôåð äëÿ îøèáîê
|
SERR PKG_STD.TSTRING; -- Áóôåð äëÿ îøèáîê
|
||||||
|
NTMP PKG_STD.TREF; -- Áóôåð äëÿ ðåã. íîìåðîâ
|
||||||
begin
|
begin
|
||||||
/* Èíèöèàëèçèðóåì îðãàíèçàöèþ */
|
/* Èíèöèàëèçèðóåì îðãàíèçàöèþ */
|
||||||
NCOMPANY := 136018;
|
NCOMPANY := 136018;
|
||||||
|
/* Èíèöèàëèçèðóåì ÄÑ äëÿ õðàíåíèÿ ïðèìå÷àíèÿ */
|
||||||
|
FIND_DOCS_PROPS_CODE(NFLAG_SMART => 0, NCOMPANY => NCOMPANY, SCODE => 'COMMENT', NRN => NPROPERTY);
|
||||||
/* Ñ÷èòàåì çàïèñü î÷åðåäè */
|
/* Ñ÷èòàåì çàïèñü î÷åðåäè */
|
||||||
REXSQUEUE := GET_EXSQUEUE_ID(NFLAG_SMART => 0, NRN => NEXSQUEUE);
|
REXSQUEUE := GET_EXSQUEUE_ID(NFLAG_SMART => 0, NRN => NEXSQUEUE);
|
||||||
/* Âîçüìåì òåêñò çàïðîñà */
|
/* Âîçüìåì òåêñò çàïðîñà */
|
||||||
CREQ := BLOB2CLOB(LBDATA => REXSQUEUE.MSG);
|
CREQ := BLOB2CLOB(LBDATA => REXSQUEUE.MSG, SCHARSET => 'UTF8');
|
||||||
/* Ñîçäàåì èíñòàíñ XML ïàðñåðà */
|
/* Ñîçäàåì èíñòàíñ XML ïàðñåðà */
|
||||||
XMLPARCER := DBMS_XMLPARSER.NEWPARSER;
|
XMLPARCER := DBMS_XMLPARSER.NEWPARSER;
|
||||||
/* Ðàçáèðàåì XML èç çàïðîñà */
|
/* Ðàçáèðàåì XML èç çàïðîñà */
|
||||||
@ -1017,7 +1027,7 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
/* Ñ÷èòûâàåì "Êîëè÷åñòâî ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
/* Ñ÷èòûâàåì "Êîëè÷åñòâî ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
||||||
NREQQUANTITY := TO_NUMBER(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SQUANTITY));
|
NREQQUANTITY := TO_NUMBER(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SQUANTITY));
|
||||||
/* Ñ÷èòûâàåì "Äàòà ïðîâåäåíèÿ èíâåíòàðèçàöèè ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
/* Ñ÷èòûâàåì "Äàòà ïðîâåäåíèÿ èíâåíòàðèçàöèè ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
||||||
DREQCHECKDATE := TO_DATE(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SCHECKDATE), 'yyyy-mm-dd');
|
DREQCHECKDATE := TO_DATE(UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SCHECKDATE), 'YYYY-MM-DD"T"HH24:MI:SS');
|
||||||
/* Ñ÷èòûâàåì "Êîììåíòàðèé ÌÎË ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
/* Ñ÷èòûâàåì "Êîììåíòàðèé ÌÎË ÎÑ" (ïàðàìåòð ñîõðàíåíèÿ) */
|
||||||
SREQCOMMENT := UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SCOMMENT);
|
SREQCOMMENT := UTL_GETNODEVAL(XROOTNODE => XNODE_ROOT, SPATTERN => SCOMMENT);
|
||||||
/* Ñ÷èòûâàåì "Øèðîòà" (ïàðàìåòð ñîõðàíåíèÿ) */
|
/* Ñ÷èòûâàåì "Øèðîòà" (ïàðàìåòð ñîõðàíåíèÿ) */
|
||||||
@ -1046,16 +1056,16 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
*/
|
*/
|
||||||
/* Åñëè çàäàí øòðèõ-êîä ìåñòàíõîæäåíèÿ ÎÑ */
|
/* Åñëè çàäàí øòðèõ-êîä ìåñòàíõîæäåíèÿ ÎÑ */
|
||||||
if (SREQSTORAGECODE is not null) then
|
if (SREQSTORAGECODE is not null) then
|
||||||
/* Ïðîâåðÿåì ìåñòîíàõîõæäåíèå ïî øòðèõ-êîäó */
|
/* Ïðîâåðÿåì íàëè÷èå ìåñòîíàõîõæäåíèÿ */
|
||||||
begin
|
begin
|
||||||
select T.RN
|
select T.BARCODE
|
||||||
into NDICPLACE
|
into SDICPLACEBARCODE
|
||||||
from DICPLACE T
|
from DICPLACE T
|
||||||
where T.COMPANY = NCOMPANY
|
where T.COMPANY = NCOMPANY
|
||||||
and T.BARCODE = SREQSTORAGECODE;
|
and T.BARCODE = SREQSTORAGECODE;
|
||||||
exception
|
exception
|
||||||
when NO_DATA_FOUND then
|
when NO_DATA_FOUND then
|
||||||
SERR := 'Ìåñòîíàõîæäåíèå èíâåíòàðíûõ îáúåêòîâ ñ øòðèõ-êîäîì: ' || SREQSTORAGECODE || ' íå íàéäåíî';
|
SERR := 'Ìåñòîíàõîæäåíèå èíâåíòàðíûõ îáúåêòîâ ñ øòðèõ-êîäîì "' || SREQSTORAGECODE || '" íå íàéäåíî';
|
||||||
end;
|
end;
|
||||||
end if;
|
end if;
|
||||||
/* Ïðîáóåì íàéòè ïîçèöèþ âåäîìîñòè èíâåíòàðèçàöèè ïî øòðèõ-êîäó (åñëè ïåðåäàí ðåã. íîìåð âåäîìîñòè è ïîêà íåò îøèáîê) */
|
/* Ïðîáóåì íàéòè ïîçèöèþ âåäîìîñòè èíâåíòàðèçàöèè ïî øòðèõ-êîäó (åñëè ïåðåäàí ðåã. íîìåð âåäîìîñòè è ïîêà íåò îøèáîê) */
|
||||||
@ -1078,22 +1088,34 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
and T.COMPANY = NCOMPANY;
|
and T.COMPANY = NCOMPANY;
|
||||||
exception
|
exception
|
||||||
when NO_DATA_FOUND then
|
when NO_DATA_FOUND then
|
||||||
SERR := 'Èíâåíòàðíàÿ êàðòî÷êà ñ øòðèõ-êîäîì: ' || SREQITEMCODE || ' íå íàéäåíà';
|
SERR := 'Èíâåíòàðíàÿ êàðòî÷êà ñ øòðèõ-êîäîì "' || SREQITEMCODE || '" íå íàéäåíà';
|
||||||
end;
|
end;
|
||||||
end;
|
end;
|
||||||
end if;
|
end if;
|
||||||
/* Åñëè íåò îøèáîê ïðè ïðîâåðêàõ */
|
/* Åñëè íåò îøèáîê ïðè ïðîâåðêàõ */
|
||||||
if (SERR is null) then
|
if (SERR is null) then
|
||||||
|
/* È ó íàñ åñòü øòðèõêîä ôàêòè÷åñêîãî ìåñòîíàõîæäåíèÿ */
|
||||||
|
if (SDICPLACEBARCODE is not null) then
|
||||||
/* Åñëè ïîçèöèÿ âåäîìîñòè èíâåíòàðèçàöèè íàéäåíà */
|
/* Åñëè ïîçèöèÿ âåäîìîñòè èíâåíòàðèçàöèè íàéäåíà */
|
||||||
if (NELINVOBJECT is not null) then
|
if (NELINVOBJECT is not null) then
|
||||||
/* Îáíîâèì å¸ */
|
/* Îáíîâèì å¸ */
|
||||||
P_ELINVOBJECT_BASE_UPDATE(NCOMPANY => NCOMPANY,
|
for C in (select T.* from ELINVOBJECT T where T.RN = NELINVOBJECT)
|
||||||
NRN => NELINVOBJECT,
|
loop
|
||||||
DUNLOAD_DATE => null,
|
P_DOCS_PROPS_VALS_BASE_MODIFY(NDOCUMENT => C.RN,
|
||||||
|
SUNITCODE => 'ElectronicInventoriesObjects',
|
||||||
|
NPROPERTY => NPROPERTY,
|
||||||
|
SSTR_VALUE => SREQCOMMENT,
|
||||||
|
NNUM_VALUE => null,
|
||||||
|
DDATE_VALUE => null,
|
||||||
|
NRN => NTMP);
|
||||||
|
P_ELINVOBJECT_BASE_UPDATE(NCOMPANY => C.COMPANY,
|
||||||
|
NRN => C.RN,
|
||||||
|
DUNLOAD_DATE => C.UNLOAD_DATE,
|
||||||
DINV_DATE => DREQCHECKDATE,
|
DINV_DATE => DREQCHECKDATE,
|
||||||
NINVPERSONS => NREQUSERCODE,
|
NINVPERSONS => NREQUSERCODE,
|
||||||
SBARCODE => SREQSTORAGECODE,
|
SBARCODE => SDICPLACEBARCODE,
|
||||||
NIS_LOADED => 0);
|
NIS_LOADED => C.IS_LOADED);
|
||||||
|
end loop;
|
||||||
else
|
else
|
||||||
/* Èëè äîáàâèì â âåäîìîñòü íàéäåííóþ ÈÊ åñëè íå íàøëè ïîçèöèþ âåäîìîñòè ïî øòðèõ-êîäó */
|
/* Èëè äîáàâèì â âåäîìîñòü íàéäåííóþ ÈÊ åñëè íå íàøëè ïîçèöèþ âåäîìîñòè ïî øòðèõ-êîäó */
|
||||||
P_ELINVOBJECT_BASE_INSERT(NCOMPANY => NCOMPANY,
|
P_ELINVOBJECT_BASE_INSERT(NCOMPANY => NCOMPANY,
|
||||||
@ -1104,9 +1126,19 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
DUNLOAD_DATE => null,
|
DUNLOAD_DATE => null,
|
||||||
DINV_DATE => DREQCHECKDATE,
|
DINV_DATE => DREQCHECKDATE,
|
||||||
NINVPERSONS => NREQUSERCODE,
|
NINVPERSONS => NREQUSERCODE,
|
||||||
SBARCODE => SREQSTORAGECODE,
|
SBARCODE => SDICPLACEBARCODE,
|
||||||
NIS_LOADED => 1,
|
NIS_LOADED => 1,
|
||||||
NRN => NELINVOBJECT);
|
NRN => NELINVOBJECT);
|
||||||
|
P_DOCS_PROPS_VALS_BASE_MODIFY(NDOCUMENT => NELINVOBJECT,
|
||||||
|
SUNITCODE => 'ElectronicInventoriesObjects',
|
||||||
|
NPROPERTY => NPROPERTY,
|
||||||
|
SSTR_VALUE => SREQCOMMENT,
|
||||||
|
NNUM_VALUE => null,
|
||||||
|
DDATE_VALUE => null,
|
||||||
|
NRN => NTMP);
|
||||||
|
end if;
|
||||||
|
else
|
||||||
|
SERR := 'Íå óäàëîñü îïðåäåëèòü ôàêòè÷åñêîå ìåñòîíàõîæäåíèå';
|
||||||
end if;
|
end if;
|
||||||
end if;
|
end if;
|
||||||
end if;
|
end if;
|
||||||
@ -1133,36 +1165,5 @@ create or replace package body UDO_PKG_EXS_INV as
|
|||||||
PKG_EXS.PRC_RESP_RESULT_SET(NIDENT => NIDENT, SRESULT => PKG_EXS.SPRC_RESP_RESULT_ERR, SMSG => sqlerrm);
|
PKG_EXS.PRC_RESP_RESULT_SET(NIDENT => NIDENT, SRESULT => PKG_EXS.SPRC_RESP_RESULT_ERR, SMSG => sqlerrm);
|
||||||
end SAVESHEETITEM;
|
end SAVESHEETITEM;
|
||||||
|
|
||||||
/* Ýëåêòðîííàÿ èíâåíòàðèçàöèÿ - ñîõðàíåíèå ðåçóëüòàòîâ èíâåíòàðèçàöèè (ÄÅÌÎ, óáðàòü!!!!) */
|
|
||||||
procedure SAVESHEETITEM_TMP
|
|
||||||
(
|
|
||||||
NIDENT in number, -- Èäåíòèôèêàòîð ïðîöåññà
|
|
||||||
NEXSQUEUE in number -- Ðåãèñòðàöèîííûé íîìåð îáðàáàòûâàåìîé ïîçèöèè î÷åðåäè îáìåíà
|
|
||||||
)
|
|
||||||
is
|
|
||||||
CRESPONSE clob; -- Áóôåð äëÿ îòâåòà
|
|
||||||
XSAVESHEETITEMRESPONSE DBMS_XMLDOM.DOMNODE; -- Êîðíåâîé ýëåìåíò îòâåòà
|
|
||||||
XNODE DBMS_XMLDOM.DOMNODE; -- Áóôåð äëÿ âåòêè îòâåòà
|
|
||||||
XITEM DBMS_XMLDOM.DOMNODE; -- Ýëåìåíò îòâåòíîãî ñïèñêà
|
|
||||||
XDOC DBMS_XMLDOM.DOMDOCUMENT; -- Äîêóìåíò
|
|
||||||
begin
|
|
||||||
UTL_CREATERESPONSEDOC(XDOC => XDOC);
|
|
||||||
/* Ñîçäà¸ì ïðîñòðàíñòâî èì¸í äëÿ îòâåòà */
|
|
||||||
XSAVESHEETITEMRESPONSE := UTL_CREATENODE(XDOC => XDOC, STAG => SSAVESHEETITEMRESPONSE, SNS => STSD);
|
|
||||||
/* Ôîðìèðóåì ðåçóëüòàò */
|
|
||||||
XITEM := UTL_CREATENODE(XDOC => XDOC, STAG => SRESULT, SNS => STSD, SVAL => 'true');
|
|
||||||
XNODE := DBMS_XMLDOM.APPENDCHILD(N => XSAVESHEETITEMRESPONSE, NEWCHILD => XITEM);
|
|
||||||
/* Îáîðà÷èâàåì îòâåò â êîíâåðò */
|
|
||||||
CRESPONSE := UTL_CREATERESPONSE(XDOC => XDOC, XCONTENT => XSAVESHEETITEMRESPONSE);
|
|
||||||
/* Âîçâðàùàåì îòâåò */
|
|
||||||
PKG_EXS.PRC_RESP_RESULT_SET(NIDENT => NIDENT,
|
|
||||||
SRESULT => PKG_EXS.SPRC_RESP_RESULT_OK,
|
|
||||||
BRESP => CLOB2BLOB(LCDATA => CRESPONSE, SCHARSET => 'UTF8'));
|
|
||||||
exception
|
|
||||||
when others then
|
|
||||||
/* Âåðí¸ì îøèáêó */
|
|
||||||
PKG_EXS.PRC_RESP_RESULT_SET(NIDENT => NIDENT, SRESULT => PKG_EXS.SPRC_RESP_RESULT_ERR, SMSG => sqlerrm);
|
|
||||||
end SAVESHEETITEM_TMP;
|
|
||||||
|
|
||||||
end;
|
end;
|
||||||
/
|
/
|
||||||
|
Loading…
x
Reference in New Issue
Block a user