📄 unit_invmanage.pas
字号:
Form_Data.SQL.ExecSQL;
End;
End;
End;
End Else IF iTypeID = 3 Then
Begin
sOldPrice := Form_Data.Table__Inventory.FieldByName('iInvSPrice').AsString;
sMemo := FormatDatetime('YYYY/MM/DD',Now())+ ' 采购价由 '+ sOldPrice +' 元调至 '+ sNewPrice +' 元';
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE Inventory ');
Form_Data.SQL.SQL.Add('SET iInvLSCost = '''+ sNewPrice +'''');
Form_Data.SQL.SQL.Add('WHERE (cInvCode = '''+ sInvCode +''' )');
Form_Data.SQL.ExecSQL;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('INSERT INTO a__Price');
Form_Data.SQL.SQL.Add('(cInvCode, PriceTCode,OldPrice,NewPrice,Maker,PriceMemo)');
Form_Data.SQL.SQL.Add('VALUES ('''+ sInvCode +''','+ IntToStr(iTypeID) +','+ sOldPrice +','+ sNewPrice +','''+ UserName +''','''+ sPriceMemo +''')');
Form_Data.SQl.ExecSQL;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('SELECT PriceNo FROM a__Price');
Form_Data.SQL.SQL.Add('WHERE (cInvCode ='''+ sInvCode +''')');
Form_Data.SQL.SQL.Add('AND (PriceTCode ='+ IntToStr(iTypeID) +')');
Form_Data.SQL.SQL.Add('AND (OldPrice ='+ sOldPrice +')');
Form_Data.SQL.SQL.Add('AND (NewPrice ='+ sNewPrice +')');
Form_Data.SQL.SQL.Add('AND (Maker = '''+ UserName +''')');
Form_Data.SQL.SQL.Add('AND (PriceMemo = '''+ sPriceMemo +''')');
Form_Data.SQL.Open;
IF (Form_Data.SQL.RecordCount <> 1) Then
Begin
Showmessage('调价记录增加不成功!');
Exit ;
End Else Begin
sPriceNO := Form_Data.SQL.FieldValues['PriceNO'];
End;
IF MessageDlg('提示: '+#13+'是否要连带修改 客户指定价'+#13+#13,mtInformation,[mbOK,mbCancel],0) = mrOk Then
Begin
sOldPrice := Form_Data.Table__Inventory.FieldByName('iInvLSCost').AsString;
sMemo := FormatDatetime('YYYY/MM/DD',Now())+ '外省价由 '+ sOldPrice +' 元调至 '+ sNewPrice +' 元';
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('INSERT INTO a__Prices');
Form_Data.SQL.SQL.Add('(PriceNO, cCusCode,OldPrice,NewPrice,dPrice,dMoney)');
Form_Data.SQL.SQL.Add('SELECT '+ sPriceNo +' AS PriceNO,');
Form_Data.SQL.SQL.Add(' SA_CusUPrice.cCusCode,');
Form_Data.SQL.SQL.Add(' SA_CusUPrice.iInvNowCost AS OldPrice,');
Form_Data.SQL.SQL.Add(' '+ sNewPrice +' AS NewPrice,');
Form_Data.SQL.SQL.Add(' '+ sNewPrice +'- SA_CusUPrice.iInvNowCost AS dPrice,');
Form_Data.SQL.SQL.Add(' 0 AS dMoney');
Form_Data.SQL.SQL.Add('FROM SA_CusUPrice INNER JOIN Customer ON SA_CusUPrice.cCusCode = Customer.cCusCode');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +''' AND cCusDefine1 = ''外省客户''');
Form_Data.SQl.ExecSQL;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET iCusDisRate = '''+ sNewPrice +'''/iInvSCost,iInvNowCost = '''+ sNewPrice +'''');
Form_Data.SQL.SQL.Add('FROM SA_CusUPrice INNER JOIN Customer ON SA_CusUPrice.cCusCode = Customer.cCusCode');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +''' AND cCusDefine1 = ''外省客户''');
Form_Data.SQL.ExecSQL;
End;
End Else
Begin
End;
End;
Form_Data.Table__Inventory.Active := False ;
Form_Data.Table__Inventory.Active := True ;
Form_Data.SQL_Price.Active := False ;
Form_Data.SQL_Price.Active := True ;
Form_Data.Table__Price.Active := False ;
Form_Data.Table__Price.Active := True ;
Form_Data.Table__SA_CusUPrice.Active := False ;
Form_Data.Table__SA_CusUPrice.Active := True ;
Form_Data.Table__InventoryForCust.Active := False ;
Form_Data.Table__InventoryForCust.Active := True ;
Form_Data.Table__Inventory.Locate('cInvCode',sInvCode,[]);
end;
procedure TForm_Inventory.N1Click(Sender: TObject);
Var
AutoID:String;
begin
IF Form_Data.Table_Manage.Lookup('MName',UserName,'M012') = 0 Then
Begin
Showmessage('你无权执行此项操作,请咨询系统管理员!');
Exit;
End;
AutoID := Form_Data.Table__InventoryForCust.FieldByName('AutoID').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET dStartDate = dCreateDate,dEndDate = GetDate(),cMemo = CONVERT(nvarchar(10), GETDATE() -1, 102)+ ''强制限销!''+'''+ UserName +'''');
Form_Data.SQL.SQL.Add('WHERE AutoID = '+ AutoID +'');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.Table__InventoryForCust.Locate('AutoID',AutoID,[])
end;
procedure TForm_Inventory.N2Click(Sender: TObject);
Var
sInvCode:String;
begin
IF Form_Data.Table_Manage.Lookup('MName',UserName,'M012') = 0 Then
Begin
Showmessage('你无权执行此项操作,请咨询系统管理员!');
Exit;
End;
sInvCode := Form_Data.Table__Inventory.FieldByName('cInvCode').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET dStartDate = dCreateDate,dEndDate = GetDate(),cMemo = CONVERT(nvarchar(10), GETDATE() -1, 102)+ ''强制限销!''+'''+ UserName +'''');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +'''');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
end;
procedure TForm_Inventory.N3Click(Sender: TObject);
Var
sInvCode:String;
begin
IF Form_Data.Table_Manage.Lookup('MName',UserName,'M012') = 0 Then
Begin
Showmessage('你无权执行此项操作,请咨询系统管理员!');
Exit;
End;
sInvCode := Form_Data.Table__Inventory.FieldByName('cInvCode').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET dStartDate = dCreateDate,dEndDate = GetDate(),cMemo = CONVERT(nvarchar(10), GETDATE() -1, 102)+ ''强制限销!''+'''+ UserName +'''');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +'''');
Form_Data.SQL.ExecSQL;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE Inventory');
Form_Data.SQL.SQL.Add('SET bSale = 0');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +'''');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__Inventory.Active := False;
Form_Data.Table__Inventory.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.Table__Inventory.Locate('cInvCode',sInvCode,[])
end;
procedure TForm_Inventory.N7Click(Sender: TObject);
Var
AutoID:String;
begin
IF Form_Data.Table_Manage.Lookup('MName',UserName,'M012') = 0 Then
Begin
Showmessage('你无权执行此项操作,请咨询系统管理员!');
Exit;
End;
AutoID := Form_Data.Table__InventoryForCust.FieldByName('AutoID').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET dStartDate = Null,dEndDate = Null,cMemo = CONVERT(nvarchar(10), GETDATE() -1, 102)+ ''恢复失效报价!''+'''+ UserName +'''');
Form_Data.SQL.SQL.Add('WHERE AutoID = '+ AutoID +'');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.Table__InventoryForCust.Locate('AutoID',AutoID,[])
end;
procedure TForm_Inventory.cxTabSheet1Show(Sender: TObject);
Var
sInvCode: String;
begin
sInvCode := Form_Data.Table__Inventory.FieldByName('cInvCode').AsString;
Form_Data.tSQL.Close;
Form_Data.tSQL.SQL.Clear;
Form_Data.tSQL.SQL.Add('SELECT cInvCode,');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 4*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 0*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 0*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 5*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 1*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 1*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 6*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 2*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 2*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 7*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 3*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 3*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 8*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 4*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 4*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1- 9*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 5*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 5*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-10*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 6*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 6*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-11*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 7*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 7*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-12*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 8*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 8*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-13*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1- 9*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1- 9*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-14*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1-10*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1-10*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-15*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1-11*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1-11*7) +''',');
Form_Data.tSQL.SQL.Add('SUM(CASE WHEN dDate >= CONVERT(nvarchar(10), GETDATE() -1-16*7, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1-12*7, 102) THEN iQuantity ELSE 0 END)/4 AS '''+ FormatDatetime('MM-DD',Now()-1-12*7) +'''');
Form_Data.tSQL.SQL.Add('FROM dbo.SaleDealList');
Form_Data.tSQL.SQL.Add('WHERE dDate >= CONVERT(nvarchar(10), GETDATE() -113, 102) AND dDate <= CONVERT(nvarchar(10), GETDATE() -1, 102)');
Form_Data.tSQL.SQL.Add('AND cInvCode ='''+ sInvCode +'''');
Form_Data.tSQL.SQL.Add('GROUP BY cInvCode');
// Form_Data.tSQL.Open;
end;
procedure TForm_Inventory.N11Click(Sender: TObject);
Var
sInvCode: String;
begin
sInvCode := Form_Data.Table__Inventory.FieldByName('cInvCode').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE Inventory');
Form_Data.SQL.SQL.Add('SET bSale = -1');
Form_Data.SQL.SQL.Add('WHERE cInvCode = '''+ sInvCode +'''');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__Inventory.Active := False;
Form_Data.Table__Inventory.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.Table__Inventory.Locate('cInvCode',sInvCode,[])
end;
procedure TForm_Inventory.N10Click(Sender: TObject);
Var
AutoID:String;
begin
IF Form_Data.Table_Manage.Lookup('MName',UserName,'M012') = 0 Then
Begin
Showmessage('你无权执行此项操作,请咨询系统管理员!');
Exit;
End;
AutoID := Form_Data.Table__InventoryForCust.FieldByName('AutoID').AsString;
Form_Data.SQL.Close;
Form_Data.SQL.SQL.Clear;
Form_Data.SQL.SQL.Add('UPDATE SA_CusUPrice');
Form_Data.SQL.SQL.Add('SET dStartDate = dCreateDate,dEndDate = GetDate()-1,bRetrun = 1,dRetrunDate = GetDate() + 60 ,cMemo = CONVERT(nvarchar(10), GETDATE() , 102)+ '' 限销不限退! ''+'''+ UserName +'''');
Form_Data.SQL.SQL.Add('WHERE AutoID = '+ AutoID +'');
Form_Data.SQL.ExecSQL;
Form_Data.Table__SA_CusUPrice.Active := False;
Form_Data.Table__SA_CusUPrice.Active := True;
Form_Data.Table__InventoryForCust.Active := False;
Form_Data.Table__InventoryForCust.Active := True;
Form_Data.Table__InventoryForCust.Locate('AutoID',AutoID,[])
end;
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -