Microsoft Great Plains SQL Scripting: repairing lot numbers - highlights for programmer


by Andrew Karasev - Date: 2007-04-15 - Word Count: 272 Share This!

Below we would like to give you brief excurse to lot number tracking and provide fixing scripts:

Item Lot Number Master table, IV00300.  This table gets record when lot is received at the specific date, please familiarize yourself with its primary key to get an idea.  Now we should come to the complication of GP business logic, related to the fact, that lot number tracking is optional.  This is why lot numbers refer to general table: Inventory Purchase Receipt Work - this table participate in regular logic, when we don't use lot numberingInventory Purchase Receipt Work, IV10200.  This table gets record when items arrive to GP via Purchase Receipts, Inventory Adjustments or Inventory transfers (in this case items are simply moved from one IV site to another)

We provide you fixing scripts, however you should analyze and try them first in test environment, as your specific case is now known to us and you should be responsible for SQL data repair.

Below please see script repairing missing IV00300 when IV10200 record is present:

insert into IV00300

(

ITEMNMBR,

LOCNCODE,

DATERECD,

DTSEQNUM ,

LOTNUMBR,

QTYRECVD ,

QTYSOLD ,

ATYALLOC,

UNITCOST ,

RCTSEQNM,

VNDRNMBR,

LTNUMSLD,

QTYTYP ,

BIN,

MFGDATE,

EXPNDATE

)

select

a.ITEMNMBR,

a.TRXLOCTN,

a.DATERECD,

1,

e.SERLTNUM,

a.QTYRECVD,

0,

0,

a.UNITCOST,

a.RCTSEQNM,

'',--VNDRNMBR

0,

a.QTYTYPE,

'',

'01/01/1900',

'01/01/1900'

from IV10200 a

join IV30200 b on b.DOCNUMBR=a.RCPTNMBR and DATERECD='MM/DD/YY' and

join IV30400 e on b.DOCNUMBR=e.DOCNUMBR

Second script gives you opposite repair, when IV0200 record is missing:

insert into IV10200

(

ITEMNMBR,

TRXLOCTN,

DATERECD,

RCTSEQNM ,

RCPTSOLD,

QTYRECVD,

QTYSOLD,

QTYCOMTD,

QTYRESERVED ,

FLRPLNDT,

PCHSRCTY,

RCPTNMBR,

VENDORID,

PORDNMBR ,

UNITCOST,

QTYTYPE,

Landed_Cost ,

NEGQTYSOPINV,

VCTNMTHD,

ADJUNITCOST,

QTYONHND  

)

select

a.ITEMNMBR,

a.LOCNCODE,

a.DATERECD,

a.RCTSEQNM,

0,

a.QTYRECVD,

a.QTYSOLD,

0,

0,

'01/01/1900',

1,

'',--we do not know RCPTNMBR

'INV TRF',-- as VENDORID

'INV TRF', --as PORDNMBR

a.UNITCOST,

a.QTYTYPE,

0, --as Landed Cost

0, --as NEGQTYSOPINV

3, --as VCTNMTHD

a.UNITCOST, --as ADJUNITCOST

1000000 -- as QTYONHAND - bogus - to try, in any case qty on hand is not important in this table

from IV00300 a

left join IV10200 b on a.ITEMNMBR=b.ITEMNMBR and b.TRXLOCTN=a.LOCNCODE and a.DATERECD=b.DATERECD  and a.RCTSEQNM=b.RCTSEQNM and a.QTYTYPE=b.QTYTYPE

where b.ITEMNMBR is null and a.LTNUMSLD=0

Source: Free Articles from ArticlesFactory.com


Related Tags: microsoft, for, great, scripting, numbers, programmer, sql, plains, lot, repairing, highlights

Andrew Karasev, Alba Spectrum Group, http://www.albaspectrum.com help@albaspectrum.com 1-866-528-0577, 1-630-961-5918, serving GP client in USA nationwide and Canada.  Local service is available in Chicago area: Naperville, Warrenville, Oakbrook, Lisle, Downers Grove, Romeoville, Aurora, Hinsdale, Joliet, Plainfield, Morris, Orland Park, Lombard, Elgin, Crystal Lake, in Houston: Richmond, Sugar Land, Rosenberg, Katy, Galveston.  Nationwide service: California, New York, Ontario, Quebec, Florida, Arizona, Iowa, Indiana, Kansas, Wisconsin, Minnesota, Washington, Nevada, Utah, Louisiana, Texas, Illinois Your Article Search Directory : Find in Articles

© The article above is copyrighted by it's author. You're allowed to distribute this work according to the Creative Commons Attribution-NoDerivs license.
 

Recent articles in this category:



Most viewed articles in this category: