TechKnowledge 内容
问题
当系统指示我的项已分配并且你无法在任何位置找到分配时,如何在 Microsoft Dynamics GP 中查找某个项 的分配? 解决方法 此脚本检查各种模块,并返回项分配位置的结果。 运行脚本以查找已分配数量之前,请确保已创建备份。 编辑以下脚本,然后针对SQL Server Management Studio执行以下脚本。 注意 请务必将第二行中的项目编号"A"替换为要查找的正确项目编号。 declare @ITEMNMBR char (30) select @ITEMNMBR = 'A' print 'Allocated Documents in Sales Order Processing' print '===============================================================' print '' if exists (select * from sysobjects where name ='SOP10200') Begin print 'Allocated Orders in Sales Order Processing' select SOPNUMBE,ITEMNMBR,ITEMDESC,ATYALLOC from SOP10200 where ITEMNMBR = @ITEMNMBR and ATYALLOC > 0 and SOPTYPE = 2 end if exists (select * from sysobjects where name ='SOP10200') Begin print 'Allocated Invoices in Sales Order Processing' select SOPNUMBE,ITEMNMBR,ITEMDESC,ATYALLOC from SOP10200 where ITEMNMBR = @ITEMNMBR and ATYALLOC > 0 and SOPTYPE = 3 end if exists (select * from sysobjects where name ='SOP10200') Begin print 'Allocated Fulfillment Orders in Sales Order Processing' select SOPNUMBE,ITEMNMBR,ITEMDESC,ATYALLOC from SOP10200 where ITEMNMBR = @ITEMNMBR and ATYALLOC > 0 and SOPTYPE = 6 end Print '' print 'Allocated Returns in Purchase Order Processing' print '===============================================================' print '' if exists (select * from sysobjects where name ='POP10500 and POP10310') Begin select A.POPRCTNM,A.ITEMNMBR, QTYRESERVED,* 来自 POP10500 A join POP10310 B on A.POPRCTNM=B.POPRCTNM and A.RCPTLNNM=B.RCPTLNNM and A.ITEMNMBR=B.ITEMNMBR where A.ITEMNMBR = @ITEMNMBR and A.QTYRESERVED > 0 end select A.POPRCTNM,A.ITEMNMBR, POP10500 A join POP10310 B on B.POPRCTNM=B.POPRCTNM and A.RCPTLNNM=B.RCPTLNNM AND A.ITEMNMBR=B.ITEMNMBR where A.ITEMNMBR = @ITEMNMBR and A.QTYRESERVED > 0 Print '' print '' print 'allocated documents in Inventory' print '============) (===============================================================================================================================================================================================================================================================================================================来自 IV10001 的BR,TRXQTY,其中 ITEMNMBR = @ITEMNMBR,TRXQTY < 0 从 IV10001 中选择 IVDOCNBR、ITEMNMBR、TRXQTY,其中 ITEMNMBR = @ITEMNMBR,TRXQTY > 0 和 IVDOCTYP = 3 结束打印 "'' 打印 'Invoicing'print '============) (============================================================================================================================================================================================================================================================================================================ ,ITEMNMBR,QUANTITY from IVC10101 where ITEMNMBR = @ITEMNMBR and DOCTYPE = 1 end print '' print 'Allocated Assembly documents in Bill of Materials' print '===============================================================' print '' if exists (select * from sysobjects where name ='BM10300') Begin select TRX_ID,ITEMNMBR,ATYALLOC from BM10300 where Component_ID <> 0 and ITEMNMBR = @ITEMNMBR and ATYALLOC > 0 end Print '' print 'Allocated Orders in Service Call Management' print '===============================================================' print '' if exists (select * from sysobjects where name ='SVC00203') Begin select CALLNBR,ITEMNMBR,ATYALLOC,LOCNCODE from SVC00203 where ITEMNMBR=@ITEMNMBR and LINITMTYP='P' AND ATYALLOC <> 0 end select CALLNBR,ITEMNMBR,ATYALLOC,LOCNCODE from SVC00203 where ITEMNMBR=@ITEMNMBR and LINITMTYP='P' AND ATYALLOC <> 0 print 'Allocated Service Call Transfers' print '===============================================================' print '' if exists (select * from sysobjects where name ='SVC00701') Begin select ORDDOCID,ITEMNMBR,TRNSFQTY from SVC00701 where ITEMNMBR=@ITEMNMBR and TRNSFQTY <> 0 end print 'Allocated Service Call Transfers (serial) ' print '===============================================================' print '' if exists (select * from sysobjects where name ='SVC00702') Begin select ORDDOCID,ITEMNMBR,SERLTQTY from SVC00702 where ITEMNMBR=@ITEMNMBR and SERLTQTY <> 0 end print 'Allocated RTV lines' print '===============================================================' print '' if exists (select * from sysobjects where name ='SVC05601') Begin select RTV_Number,ITEMNMBR, QUANTITY, * from SVC05601 where ITEMNMBR=@ITEMNMBR and RTV_Status=2 and CUSTOWN=0 and Transfer_Reference='' end select RTV_Number,ITEMNMBR, QUANTITY, * from SVC05601 where ITEMNMBR=@ITEMNMBR and RTV_Status=2 and CUSTOWN=0 and Transfer_Reference='' print 'Allocated Documents in Depot Management' print '===============================================================' print '' if exists (select * from sysobjects where name ='SVC06100') Begin select WORKORDNUM,IBITEMNUM,QUANTITY,LOCNCODE from SVC06100 where IBITEMNUM=@ITEMNMBR AND WORECTYPE = 2 AND QUANTITY <> 0 End if exists (select * from sysobjects where name ='SVC06101') Begin select WORKORDNUM,ITEMNMBR,ATYALLOC,LOCNCODE from SVC06101 where ITEMNMBR=@ITEMNMBR AND WORECTYPE = 2 and ATYALLOC <> 0 end if exists (select * from sysobjects where name ='SVC06120') Begin select WORKORDNUM,ITEMNMBR,SERLTQTY from SVC06120 where ITEMNMBR=@ITEMNMBR AND WORECTYPE = 2 AND SERLTQTY <> 0 End print '' print 'Allocated Documents in Project Accounting' print '===============================================================' print '' if exists (select * from sysobjects where name ='PA10901') Begin select PAIV_Document_No,ITEMNMBR,PABase_Qty,LOCNCODE from PA10901 where ITEMNMBR=@ITEMNMBR and PABase_Qty <> 0 and PAIV_Transfer_Type = 1 end print '' print 'This is the (general) allocated or pending issue quantity in the MOP1400 for this Manufacturing Order' print '===============================================================' print '' if exists (select * from sysobjects where name ='MOP1400') Begin select MANUFACTUREORDER_I, ITEMNMBR, ATYALLOC from MOP1400 where ATYALLOC > 0 and ITEMNMBR = @ITEMNMBR end print 'This is the (bin) allocated quantity in the MOP1900 for this Manufacturing Order' print '===============================================================' print '' if exists (select * from sysobjects where name ='MOP1900') Begin select MANUFACTUREORDER_I, ITEMNMBR, ATYALLOC, LOCNCODE, BIN from MOP1900 where ATYALLOC > 0 and ITEMNMBR = @ITEMNMBR end print 'This is the (lot) allocated or pending issue quantity in MOP1020 for this Manufacturing Order' print '===============================================================' print '' if exists (select * from sysobjects where name ='MOP1020') Begin select MANUFACTUREORDER_I, ITEMNMBR, SERLTNUM, FROM_SITE_I, DOCNUMBR from MOP1020 where ITEMNMBR =@ITEMNMBR end print 'Pending transactions that can hold allocations' print '===============================================================' print '' if exists (select * from sysobjects where name ='MOP1200 and MOP1020 and MOP1025 and MOP1026') Begin select * from MOP1020 where DOCNUMBR in (select PICKNUMBER from MOP1200 where POSTED=1) select * from MOP1025 where MOPDOCNUM in (select PICKNUMBER from MOP1200 where POSTED=1) 从"1026"中选择*,其中"中位于" (的"从""选择"来自"来自",其中 POSTED=1) 结束更多信息
本文为 TechKnowledge 文档 ID:27161