即时库存
现在是19点37分,吃过饭也超过半个小时了,差不多该写写代码了。想到数据库就头疼,尤其是过程,这该死的系统存储过程还那么长,我去…..
我的网易校园招聘网页还是打不开,看来今天的网速还是像平常一样抽了,还好用windows live writer离线写,就这样写着吧,等网页打开了,看看我的简历投出去没。
今天我打算完成的主要部分:1在出入库单据表(ICstockbillentry)里插入一列(FZLNo),但是这张表是老表,不能直接插入,貌似还要关联到一张系统表(ICTemplateEntry),我要在这张表里同时插入我的列信息,但是插入参数有点多,一个个看是什么意思有点不现实。我打算用SQL追踪,如果我在系统中手动在单据体增加一列,系统应该会有一个SQL语句,能捕捉到就OK了。先这样试试。
打开K3和SQL差点卡死,系统太慢了,也不知道是神马情况。
Insert Into ICTemplateEntry(FID,FLookUpType,FCtlIndex,FCtlOrder,FHeadCaption,FHeadCaption_CHT,FHeadCaption_EN,FCtlType,FLookUpCls,FNeedSave,FValueType,FSaveValue,FFieldName,FWidth,FEnable,FRelateOutTbl,FPrint,FMustInput,FNeedCount,FFilter,FRelationID,FAction,FDefaultCtl,FVisForBillType, FStatCount,FFormat,FMaxValue,FMinValue,FItemClassID,FUserDefineClassID)Values('A02',0,39,39,'制令号','新增列39','Self-defined List39',30,-1,-1,0,0,'FEntrySelfA0239',1500,48,0,-1,0,0,'','','',0,31,0,'','','',0,0)成功搞定
现在可以根据这个方法给其他出入库单据加制令号了,不过是不是可以多张单子关联到一列上呢,试试。
好吧,出现新的问题,我直接alter表增加一列,然后在ICTemplateEntry表中增加一条信息,但是还是校对的时候报错,应该是信息还是加的不够,到底怎么办。。。先给女朋友打个电话,放松一下。
短信呼………………………………………………………………回来继续奋斗吧
插入的信息不够。。我决定再试着追踪一次。
用记事本先保存和制令号相关的信息,我快疯掉了,我把SQL语句全部拷出来执行一遍就出错,系统自己执行就不出错,这神马情况?
女朋友电话也打不通,手机好像没电了,不知道回宿舍没有,有点担心她了。
回到遇到的问题,难道要我在每一张单据上面拖一列过去?也不知道该找谁问问,这叫我情何以堪。
追踪发现,系统不止在icstockbillentry插入了列,还在icstockbillentry_1~41这些表中也插入了相同的列。是不是我无法校对跟这个有关。成功插入,并且校对没有报错,果然如我所料。再试着关联到其他表试试。
完成,没有出错,第一步大功告成,原来老表后台插入一列的时候要插入所有的entry
接下来我就不需要修改我的代码了,现在只要完成库存查询,那就只剩下最后最难得存储过程了。
好吧,日志发布不上,网络不给力啊~~~~女朋友还是打不通电话!!!
现在时间21点14分
最后成功执行的语句:
Insert Into ICTemplateEntry(FID,FLookUpType,FCtlIndex,FCtlOrder,FHeadCaption,FHeadCaption_CHT,FHeadCaption_EN,FCtlType,FLookUpCls, FNeedSave,FValueType,FSaveValue,FFieldName,FWidth,FEnable,FRelateOutTbl,FPrint,FMustInput,FNeedCount,FFilter,FRelationID, FAction,FDefaultCtl,FVisForBillType, FStatCount,FFormat,FMaxValue,FMinValue,FItemClassID,FUserDefineClassID) Values('A97',0,39,39,'制令号','制令号','制令号',30,-1,-1,0,0,'FZLNo',1500,48,0,-1,0,0,'','','',0,0,0,'','','',0,0) if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry' and t2.Name='FZLNo') Alter Table ICStockBillEntry Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_1' and t2.Name='FZLNo') Alter Table ICStockBillEntry_1 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_2' and t2.Name='FZLNo') Alter Table ICStockBillEntry_2 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_5' and t2.Name='FZLNo') Alter Table ICStockBillEntry_5 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_10' and t2.Name='FZLNo') Alter Table ICStockBillEntry_10 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_21' and t2.Name='FZLNo') Alter Table ICStockBillEntry_21 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_24' and t2.Name='FZLNo') Alter Table ICStockBillEntry_24 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_28' and t2.Name='FZLNo') Alter Table ICStockBillEntry_28 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_29' and t2.Name='FZLNo') Alter Table ICStockBillEntry_29 Add FZLNo VARCHAR(255) NULL if not exists (SELECT * FROM sysobjects t1 ,syscolumns t2 where t1.id=t2.id and t1.name='ICStockBillEntry_41' and t2.Name='FZLNo') Alter Table ICStockBillEntry_41 Add FZLNo VARCHAR(255) NULL

浙公网安备 33010602011771号