監(jiān)理公司管理系統(tǒng) | 工程企業(yè)管理系統(tǒng) | OA系統(tǒng) | ERP系統(tǒng) | 造價(jià)咨詢管理系統(tǒng) | 工程設(shè)計(jì)管理系統(tǒng) | 甲方項(xiàng)目管理系統(tǒng) | 簽約案例 | 客戶案例 | 在線試用
X 關(guān)閉
ERP系統(tǒng)二次開(kāi)發(fā)

申請(qǐng)免費(fèi)試用、咨詢電話:400-8352-114

  對(duì)于ERP實(shí)施顧問(wèn)二次開(kāi)發(fā)是最熟悉不過(guò)了,對(duì)實(shí)施國(guó)內(nèi)ERP軟件的顧問(wèn)能做自己做一點(diǎn)二次開(kāi)發(fā)那就更好不過(guò)了,如果你不會(huì)懂?dāng)?shù)據(jù)庫(kù),不會(huì)做簡(jiǎn)單的二次開(kāi)發(fā),你會(huì)發(fā)現(xiàn)實(shí)施一個(gè)項(xiàng)目很困難,解決問(wèn)題那就更加困難了!ERP軟件的源代碼都是軟件公司控制,我們不可能得到或修改。那么我們常說(shuō)的二次開(kāi)發(fā)都有那些呢?

  1、數(shù)據(jù)庫(kù)的開(kāi)發(fā),就是利用sql server里的觸發(fā)器對(duì)數(shù)據(jù)增加,修改,刪除的時(shí)候做一些開(kāi)發(fā)。

  2、ERP軟件自帶的單據(jù)自定義功能,報(bào)表功能。這個(gè)我相信大家都用的很熟,這里就不寫(xiě)了!

  3、利用ERP軟件開(kāi)放的接口進(jìn)行二次開(kāi)發(fā)。如泛普開(kāi)放的:憑證,基礎(chǔ)數(shù)據(jù),物流單據(jù)。

  4、我覺(jué)得是最沒(méi)有辦法的選擇。就是外掛,對(duì)數(shù)據(jù)庫(kù)直接進(jìn)行讀寫(xiě)操作。

財(cái)務(wù).png

  注:以下sql需要大家自己測(cè)試!

  在這里我要和大家重點(diǎn)討論數(shù)據(jù)據(jù)觸發(fā)器的開(kāi)發(fā):

  問(wèn)題:我們需要在物料基礎(chǔ)資料里加一個(gè)自定義項(xiàng)“即時(shí)庫(kù)存”,那么我們?cè)趺礃硬拍馨鸭磿r(shí)庫(kù)存查詢里的數(shù)據(jù)寫(xiě)到這里呢?很簡(jiǎn)單,我們只需要在表即時(shí)庫(kù)存表里如:ICInventory加一個(gè)觸發(fā)器就可以解決。以泛普為例:

  CREATE TRIGGER stockqty ON [dbo].[CurrentStock]

  FOR insert ,UPDATE

  AS

  DECLARE

  @str1 varchar(40),

  @fqty numeric(15,6),

  @fqty1 numeric(15,6)

  select @str1=cinvcode from Inserted

  select @fqty1=sum(t20.iQuantity) from Currentstock t20 where t20.cInvCode=@str1

  and t20.cWhCode<='60' group by t20.cinvcode

  select @fqty=isnull(cInvDefine14,0) from Inventory where cinvcode =@str1

  if @fqty<>@fqty1

  update Inventory

  set cInvDefine14=@fqty1

  where cinvcode =@str1

  泛普也一樣表改一下,都一樣!

  問(wèn)題:

  問(wèn)題描述:

  在銷(xiāo)售發(fā)票自動(dòng)傳遞到應(yīng)收款系統(tǒng)時(shí),對(duì)應(yīng)的應(yīng)收款日期為,銷(xiāo)售發(fā)票日期。而客戶的需求確是銷(xiāo)售出庫(kù)的日期

  問(wèn)題觖決:

  在收款計(jì)劃表t_RP_RPDetail數(shù)據(jù)新增的時(shí)候,加入一觸發(fā)器:

  CREATE TRIGGER t_rp_rpdetail_insert1 ON t_rp_rpdetail --###

  FOR INSERT

  NOT FOR REPLICATION

  AS

  DECLARE @Next int,

  @insert int,

  @fbillno varchar(30),

  @fdate datetime

  if @@Rowcount = 0

  return

  --set @TableName = 't_rp_rpdetail' --###

  SELECT @Next =forgid

  FROM Inserted

  select @fbillno=FNumber

  from t_RP_Contact

  where FID=@next

  select @insert=FOutStockInterID

  from ICSale

  where FBillNo=@fbillno

  select @fdate =FDate

  from ICStockBill

  where finterid=@insert

  if @fdate is not null

  begin

  update t_rp_contact set FRPDate=@fdate from t_rp_contact where fid=@next

  update t_RP_RPDetail set fdate=@fdate from t_RP_RPDetail where forgid=@next

  end

  問(wèn)題:出庫(kù)單自動(dòng)帶出單價(jià)。

  CREATE TRIGGER icstockinsert ON [dbo].[ICStockBill]

  FOR INSERT, UPDATE

  AS

  DECLARE @kinterid int,@kentryid int,@kitemid int,@kqty decimal(28,10),@kBatchNo varchar(200),

  @kprice as decimal(28,10),@ktrantype as int

  select @ktrantype=ftrantype, @kinterid=finterid

  from Inserted

  if @ktrantype in (21,24,28,29,41)

  begin

  update icstockbillentry set

  Fauxprice=isnull(( select top 1 fprice from

  icstockbill t10 inner join icstockbillentry t20 on t10.finterid=t20.finterid

  where t10.ftrantype in (1,2) and t20.fitemid=t1.fitemid and t20.fbatchno=t1.fbatchno

  order by t10.fdate),0)

  from icstockbillentry t1

  where t1.finterid=@kinterid and fauxprice=0

  update icstockbillentry set

  famount=Fauxprice*fqty

  from icstockbillentry t1

  where t1.finterid=@kinterid and famount=0

  end

發(fā)布:2007-02-27 14:10    來(lái)源:泛普軟件    [打印此頁(yè)]    [關(guān)閉]
功能詳情
聯(lián)系方式

成都公司:成都市成華區(qū)建設(shè)南路160號(hào)1層9號(hào)

重慶公司:重慶市江北區(qū)紅旗河溝華創(chuàng)商務(wù)大廈18樓

咨詢:400-8352-114

加微信,免費(fèi)獲取試用系統(tǒng)

QQ在線咨詢

相關(guān)欄目

ERP系統(tǒng)設(shè)計(jì) ERP系統(tǒng)開(kāi)發(fā) ERP需求調(diào)研 ERP系統(tǒng)實(shí)施 ERP系統(tǒng)培訓(xùn) ERP解決方案 ERP售后服務(wù) ERP系統(tǒng)免費(fèi)下載 ERP系統(tǒng)破解 ERP系統(tǒng)二次開(kāi)發(fā) ERP系統(tǒng)怎么用 ERP是什么意思 行業(yè)動(dòng)態(tài) 規(guī)劃選型 技術(shù)文章