亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? ss_txpkccsh.pas

?? 省級集郵品管理ERP
?? PAS
?? 第 1 頁 / 共 3 頁
字號:
          end;
          {符合條件,輸入數據庫}
          Update_Record; {更新庫存記錄} {}
        end;

        pgb_State.Position := i;
        i := i + 1;
        Next;
      end;

      Delete_Record; {刪除庫存為0的記錄} {}
      Database.Commit;
    except
      if Database.InTransaction then
        Database.Rollback;
      ds_init.DataSet := qry_init;
      FreeBookmark(cur_pos);
      pgb_State.Visible := False;
      lbl_State.Visible := False;
      lbl_Search.Visible := True;
      ds_init.DataSet := qry_init;
      EnableControls;

      CHQMsgBox('數據初始化錯誤!可能是因為相同票品不同進價設置引起的,請重新設置相同票品不同進價,詳細內容請查看幫助。');
      Result := False;
      Exit;
    end;

    Call_StoreProc; {調用存儲過程,更新其他表,本步驟不加在事務內,同時出錯不顯式提示} {}

    GotoBookmark(cur_pos);
    FreeBookmark(cur_pos);
    pgb_State.Visible := False;
    lbl_State.Visible := False;
    lbl_Search.Visible := True;
    ds_init.DataSet := qry_init;
    EnableControls;
    Set_State(0);
  end;

  Show_Data;

  if Have_Find = True then
  begin
    qry_Init.Locate('TDM', l_PPDM, [loCaseInsensitive]);
    qry_Init.Locate('TDM;JJ', VarArrayOf([l_PPDM, l_JJ]), [loCaseInsensitive]);
  end;
  Result := True;
end;

{判斷進價是否存在相同的}
function Tfrm_TXPKCCSH.Test_JJ: Boolean;
var
  test_pos: Pointer;
  l_PPDM: string;
  l_JJ: Double;
begin
  with qry_init do
  begin
    test_pos := GetBookmark;
    try
      l_PPDM := FieldByName('TDM').AsString;
      l_JJ := FieldByName('JJ').AsFloat;

      while not Eof do
      begin
        Next;
        if Eof then
          Break;
        if l_PPDM <> FieldByName('TDM').AsString then
          break;
        if l_JJ = FieldByName('JJ').AsFloat then
        begin
          {查找新增項目}
          if FieldByName('JJ').OldValue <> NULL then
            GotoBookmark(test_pos);

          {設置處于編輯狀態}
          rxdb_Init.SelectedIndex := 4;
          Result := False;
          Exit;
        end;
      end;
      GotoBookmark(test_pos);

      while not Bof do
      begin
        Prior;
        if Bof then
          Break;
        if l_PPDM <> FieldByName('TDM').AsString then
          break;
        if l_JJ = FieldByName('JJ').AsFloat then
        begin
          {查找新增項目}
          if FieldByName('JJ').OldValue <> NULL then
            GotoBookmark(test_pos);

          {設置處于編輯狀態}
          rxdb_Init.SelectedIndex := 4;
          Result := False;
          Exit;
        end;

      end;
      GotoBookmark(test_pos);
    finally
      FreeBookmark(test_pos);
    end;
  end;

  Result := True;
end;

function Tfrm_TXPKCCSH.Test_XJ: Boolean;
var
  l_KFDM: string;
begin
  l_KFDM := fcb_KF.FieldString;
  with qry_Tmp do
  begin
    Close;
    SQL.Text := 'Select XJ from TYS_TXPPKC where PPDM=''' + qry_init.FieldByName('TDM').AsString + '''and KFDM<>''' + l_KFDM + ''' and XJ<>' + FloatToStr(qry_init.FieldByName('XJ').AsFloat);
    Open;
  end;
  if qry_Tmp.IsEmpty = False then
  begin
    {設置處于編輯狀態}
    rxdb_Init.SelectedIndex := 5;
    if not (dgAlwaysShowEditor in rxdb_Init.Options) then
    begin
      rxdb_Init.Options := rxdb_Init.Options + [dgAlwaysShowEditor];
      rxdb_Init.Options := rxdb_Init.Options - [dgAlwaysShowEditor];
    end;
    rxdb_Init.SetFocus;
    Result := False;
    exit;
  end;
  Result := True;
end;

{-------------------------------------------------------------------------------}
{向數據庫中插入不為0的數據}
function Tfrm_TXPKCCSH.Update_Record: Boolean;
const
  Insert_SQL = 'Insert into TYS_TXPPKC (KFDM,PPDM,JJ,XJ,KWH,JSJ,ZK,TS) values(''%s'',''%s'',%f,%f,''%s'',%f,%f,%d)';
  Update_SQL = 'update TYS_TXPPKC set KWH=''%s'',JJ=%f,XJ=%f,JSJ=%f,ZK=%f,TS=%d where KFDM=''%s'' and PPDM=''%s'' and JJ=%f ';
var
  l_oldJJ, l_JJ, l_XJ, l_JSJ, l_ZK: Double;
  l_TS: Integer;
  l_PPDM, l_KFDM, l_KWH: string;
  SQLString: string;
begin
  l_KFDM := fcb_KF.FieldString;
  l_KWH := qry_init.FieldByName('KWH').AsString;
  l_PPDM := qry_init.FieldByName('TDM').AsString;
  l_JJ := qry_init.FieldByName('JJ').AsFloat;
  l_XJ := qry_init.FieldByName('XJ').AsFloat;
  l_JSJ := qry_init.FieldByName('JSJ').AsFloat;
  l_ZK := qry_init.FieldByName('ZK').AsFloat;
  l_TS := qry_init.FieldByName('TS').AsInteger;

  {決定是插入還是修改}
  if qry_init.FieldByName('PPDM').AsString = '' then {插入}
    SQLString := Format(Insert_SQL, [l_KFDM, l_PPDM, l_JJ, l_XJ, l_KWH, l_JSJ, l_ZK, l_TS])
  else
  begin
    try
      l_oldJJ := qry_init.FieldByName('JJ').OldValue;
    except
      l_oldJJ := 0;
    end;
    SQLString := Format(Update_SQL, [l_KWH, l_JJ, l_XJ, l_JSJ, l_ZK, l_TS,
      l_KFDM, l_PPDM, l_oldJJ]);
  end;

  with qry_Tmp do
  begin
    Close;
    SQL.Text := SQLString;
    ExecSQL;
  end;
  Result := True;
end;

{-------------------------------------------------------------------------------}
{從數據庫中刪除為0的記錄}
function Tfrm_TXPKCCSH.Delete_Record: Boolean;
begin
  with qry_Tmp do
  begin
    Close;
    SQL.Text := 'Delete TYS_TXPPKC where TS=0';
    ExecSQL;
  end;
  Result := True;
end;

{調用存儲過程,更新其他表,本步驟不加在事務內,同時出錯不顯式提示}
function Tfrm_TXPKCCSH.Call_StoreProc: Boolean;
begin
  try
    with sp_Init do
    begin
      Close;
      ParamByName('PC_DWDM').AsString := VG_UNITID;
      ParamByName('PC_USERID').AsString := VG_UserID;
      ParamByName('PN_FLG').AsFloat := 0;
      ExecProc;
    end;
  except
    CHQMsgBox('數據庫內部處理出錯!請與程序供應商聯系。錯誤為:存儲過程JYP_CSH_WC');
    Result := False;
    Exit;
  end;
  Result := True;
end;

{-------------------------------------------------------------------------------}
{啟動時顯示默認的所有數據}
procedure Tfrm_TXPKCCSH.FormShow(Sender: TObject);
begin
  {初始化所有參數}
  Init_Search_CSH;

  DWMC.Caption := '使用單位:' + VG_UnitName;
  Find_SQL := ' and ( b.TYPE=''jtlm'' or b.TYPE=''ptyp'' or b.TYPE=''fpj'') ';
  lbl_Search.Caption := '顯示條件——所有數據';
  qry_initSL.DisplayFormat := '#,##';
  Show_Data;

  {設置界面狀態,如果已經初始化或者初始化完成,則不能修改}
  if Judge_Modify = False then
    Set_State(2)
  else
    Set_State(0);

end;

{如果處于修改狀態,則退出時給出提示,詢問是否退出}
procedure Tfrm_TXPKCCSH.FormCloseQuery(Sender: TObject;
  var CanClose: Boolean);
begin
  if Edit_State = 1 then
    if CHQMsgBox('正處于修改狀態,真的要退出嗎?', 2) = mrNo then
      CanClose := False;
end;

{-------------------------------------------------------------------------------}
procedure Tfrm_TXPKCCSH.edt_LocateKeyPress(Sender: TObject; var Key: Char);
begin
  if qry_init.Active = True then
  begin
    if Key in ['a'..'z'] then Key := Chr(Ord(key) + Ord('A') - Ord('a'));
    qry_init.Locate('ZH', edt_Locate.Text + Key, [loCaseInsensitive, loPartialKey]);
  end
  else
    Key := Chr(0);
end;

{---------------------------------功能按鈕--------------------------------------}
{保存初始化數據}
procedure Tfrm_TXPKCCSH.bbtn_SaveClick(Sender: TObject);
begin
  Save_Init_Data;
end;

{取消保存初始化數據}
procedure Tfrm_TXPKCCSH.bbtn_CancelClick(Sender: TObject);
begin
  Cancel_Init_Data;
end;

{修改}
procedure Tfrm_TXPKCCSH.bbtn_EditClick(Sender: TObject);
begin
  qry_init.Edit;
  Set_State(1);

  rxdb_Init.SetFocus;
  if rxdb_Init.SelectedIndex < 4 then
    rxdb_Init.SelectedIndex := 4;

end;


{批處理修改數據}
procedure Tfrm_TXPKCCSH.bbtn_ReplaceClick(Sender: TObject);
begin
  Set_Data;
end;

{打印初始化數據}
procedure Tfrm_TXPKCCSH.bbtn_PrintClick(Sender: TObject);
begin
  try
    qry_init.Filter := 'TS<>0 and TS<>NULL';
    qry_init.Filtered := True;
    PrintDBGridEh(rxdb_Init, RxLbl_Title.Caption);
  finally
    qry_init.Filtered := False;
  end;
end;


procedure Tfrm_TXPKCCSH.rxdb_InitDrawColumnCell(Sender: TObject;
  const Rect: TRect; DataCol: Integer; Column: TColumnEh;
  State: TGridDrawState);
begin
  if qry_initSL.AsInteger > 0 then
    if (gdSelected in State) and (rxdb_Init.Focused = True) then
      rxdb_Init.Canvas.Font.Color := clWhite
    else
      rxdb_Init.Canvas.Font.Color := $00A56E3A;

  rxdb_Init.DefaultDrawColumnCell(Rect, DataCol, Column, State);

end;

procedure Tfrm_TXPKCCSH.rxdb_InitGetFooterParams(Sender: TObject; DataCol,
  Row: Integer; Column: TColumnEh; AFont: TFont; var Background: TColor;
  var Alignment: TAlignment; State: TGridDrawState; var Text: string);
begin
  try
    if (UpperCase(Column.Field.FieldName) = 'JJJE') or
      (UpperCase(Column.Field.FieldName) = 'XJJE') then
      if Text = '' then
        Text := '0'
      else
        Text := FormatFloat('#,##0.00##', StrToFloat(Text) / 100)
  except
  end;

  if (Column.FieldName = 'TMC') then
    Text := '記錄數:  ' + Text;

  if (Column.FieldName = 'ZH') then
    Text := '合 計';
end;

procedure Tfrm_TXPKCCSH.qry_initXJChange(Sender: TField);
var
  Old_Value: Double;
  cur_pos: Pointer;
  l_TDM: string;
  l_XJ: double;
begin
  {判斷銷價是否合法}
  if qry_initXJ.AsFloat < 0 then
  begin
    CHQMsgBox('銷價不能為負!');
    Old_Value := 0;
    if qry_init.FieldByName('PPDM').AsString <> '' then
    try
      Old_Value := qry_initXJ.OldValue;
    except
    end;
    qry_initXJ.OnChange := nil;
    qry_initXJ.AsFloat := Old_Value;
    qry_initXJ.OnChange := qry_initXJChange;
    Abort;
  end;

  qry_init.FieldByName('TEMP').AsInteger := 1;
  DisJE(1);
//  rxdb_Init1.DisableScroll;

  {統一銷價}
  with qry_init do
  begin
    qry_initXJ.OnChange := nil;
    cur_pos := GetBookmark;
    try
      l_XJ := FieldByName('XJ').AsFloat;
      l_TDM := FieldByName('TDM').AsString;

      DisableControls;
      while not Eof do
      begin
        if FieldByName('TDM').AsString = l_TDM then
        begin
          Edit;
          FieldByName('XJ').AsFloat := l_XJ;
          FieldByName('TEMP').AsInteger := 1;
          Next;
        end
        else
          Break;
      end;
      GotoBookmark(cur_pos);

      Prior;
      while not Bof do
      begin
        if FieldByName('TDM').AsString = l_TDM then
        begin
          Edit;
          FieldByName('XJ').AsFloat := l_XJ;
          FieldByName('TEMP').AsInteger := 1;
          Prior;
        end
        else
          Break;
      end;
    finally
      GotoBookmark(cur_pos);
      FreeBookmark(cur_pos);

      qry_initXJ.OnChange := qry_initXJChange;
      EnableControls;
    end;
  end;
end;

procedure Tfrm_TXPKCCSH.DisJE(AType: Integer); {設置金額顯示,0-進價金額;1-銷價金額;2-面值金額}
begin
  case AType of
    0: //進價金額;
      Qry_init.FieldByName('JJJE').AsFloat := Qry_init.FieldByName('JJ').AsFloat * Qry_init.FieldByName('TS').AsFloat;
    1: //銷價金額;
      Qry_init.FieldByName('XJJE').AsFloat := Qry_init.FieldByName('XJ').AsFloat * Qry_init.FieldByName('TS').AsFloat;
    2: //面值金額
      Qry_init.FieldByName('MZJE').AsFloat := Qry_init.FieldByName('TPMZ').AsFloat * Qry_init.FieldByName('TS').AsFloat;
  end;
end;

procedure Tfrm_TXPKCCSH.bbtn_AddClick(Sender: TObject);
begin
  Add_Init_Data;
end;

procedure Tfrm_TXPKCCSH.qry_initJJChange(Sender: TField);
var
  Old_Value: Double;
begin
  {判斷進價是否合法}
  if qry_initJJ.AsFloat < 0 then
  begin
    CHQMsgBox('進價不能為負!');
    Old_Value := 0;
    if qry_init.FieldByName('PPDM').AsString <> '' then
    try
      Old_Value := qry_initJJ.OldValue;
    except
    end;
    qry_initJJ.OnChange := nil;
    qry_initJJ.AsFloat := Old_Value;
    qry_initJJ.OnChange := qry_initJJChange;
    Abort;
  end;

  qry_init.FieldByName('TEMP').AsInteger := 1;
  DisJE(0);
end;
end.

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
91在线精品一区二区三区| 99久久777色| 亚洲在线视频网站| 亚洲一区二区黄色| 精品国产一区a| 欧美日本一道本| 久久97超碰国产精品超碰| 午夜精品一区二区三区免费视频 | 在线综合视频播放| 色欧美88888久久久久久影院| 91美女视频网站| 欧美视频精品在线观看| 欧美日韩不卡一区| 337p粉嫩大胆噜噜噜噜噜91av| 国产精品色呦呦| 亚洲成人先锋电影| 丁香六月久久综合狠狠色| 91女人视频在线观看| 国产无人区一区二区三区| 国产人成亚洲第一网站在线播放 | 国产成人超碰人人澡人人澡| 日韩欧美一二三| 一区二区三区国产精华| 国产91丝袜在线18| 日韩一区二区精品葵司在线| 久久久久久毛片| 日韩一区精品视频| 91精品麻豆日日躁夜夜躁| 日韩在线卡一卡二| 91精品国产丝袜白色高跟鞋| 日韩一区精品字幕| 精品国产乱码久久| 国产一区二三区| 久久久www成人免费无遮挡大片| 精品一区二区综合| 国产精品无遮挡| 丝袜美腿成人在线| 欧美日韩美女一区二区| 亚洲3atv精品一区二区三区| 欧美三级中文字幕在线观看| 免费精品视频最新在线| 日韩三级免费观看| 日韩高清不卡一区二区三区| 在线观看国产日韩| 国产精品免费av| 色综合亚洲欧洲| 亚洲午夜久久久久久久久电影院| 91国内精品野花午夜精品| 一区二区三区精品在线| 日韩欧美国产高清| 波多野结衣一区二区三区| 一二三四区精品视频| 日韩一区二区三区免费看| 国内一区二区视频| 亚洲欧美在线另类| 国产三级三级三级精品8ⅰ区| 成人av电影在线| 国产盗摄一区二区三区| 久久成人免费电影| 婷婷丁香久久五月婷婷| 亚洲精品久久久久久国产精华液| 91精品国产综合久久婷婷香蕉| 豆国产96在线|亚洲| 青青草视频一区| 亚洲综合色在线| 亚洲一区二区三区美女| 亚洲视频狠狠干| 亚洲欧美aⅴ...| 亚洲欧美综合在线精品| 国产亚洲午夜高清国产拍精品| 日韩欧美一二三| 欧美白人最猛性xxxxx69交| 在线视频观看一区| 欧美这里有精品| 欧美性色黄大片手机版| 91国偷自产一区二区开放时间| 欧洲日韩一区二区三区| 欧美伦理影视网| www国产精品av| 国产精品欧美经典| 亚洲成av人影院| 青青草一区二区三区| 国产suv精品一区二区三区| 成人激情动漫在线观看| 欧洲精品在线观看| 久久婷婷一区二区三区| 一区二区三区四区不卡视频| 午夜电影一区二区| 国产精品夜夜嗨| 欧美视频在线一区| 国产精品久久久久影视| 久久爱另类一区二区小说| 成人免费高清在线观看| 日韩欧美国产午夜精品| 亚洲色图色小说| 成人综合婷婷国产精品久久免费| 91免费看`日韩一区二区| 精品国产一二三| 无码av中文一区二区三区桃花岛| 不卡的看片网站| 久久蜜桃香蕉精品一区二区三区| 男人的天堂久久精品| 91极品视觉盛宴| 国产精品美女www爽爽爽| 国产精品18久久久| 精品捆绑美女sm三区| 蜜臀av性久久久久蜜臀aⅴ四虎 | 成a人片亚洲日本久久| 中文字幕第一区| 国产精品99久久不卡二区| 久久亚洲精华国产精华液| 另类欧美日韩国产在线| 69堂精品视频| 久久福利资源站| 精品国产百合女同互慰| 国产91丝袜在线播放0| 欧美激情中文字幕一区二区| 国产一区视频在线看| 国产视频亚洲色图| 国产麻豆精品在线| 亚洲视频一区二区在线| 成人免费视频视频在线观看免费| 中文字幕乱码亚洲精品一区| 色吊一区二区三区| 日本特黄久久久高潮| 欧美xxxxx牲另类人与| 久久精品国产网站| 久久女同精品一区二区| 一本久道中文字幕精品亚洲嫩| 亚洲午夜免费视频| 久久综合国产精品| 欧美影视一区在线| 国产高清不卡一区| 亚洲精品亚洲人成人网| 精品国产a毛片| 欧美男男青年gay1069videost | 欧美成人官网二区| 欧美少妇xxx| 99久久综合99久久综合网站| 日本一区免费视频| 欧美精品久久天天躁| 欧美三级电影网站| 成人av免费在线播放| 美腿丝袜在线亚洲一区| 亚洲黄色小视频| 亚洲欧美激情小说另类| 亚洲免费视频中文字幕| 久久综合色综合88| 91麻豆精品国产91久久久更新时间| 一本久道久久综合中文字幕| 91麻豆国产精品久久| 91国偷自产一区二区使用方法| 成人网页在线观看| 国产精品18久久久| 91香蕉国产在线观看软件| 91精品91久久久中77777| 91视频一区二区三区| 91福利视频在线| 欧美美女喷水视频| 久久奇米777| 亚洲人成精品久久久久久| 亚洲主播在线观看| 国产一区二区三区在线观看免费 | 日韩欧美www| 国产一区二区三区在线观看精品 | 精品99999| 国内精品在线播放| 久久奇米777| 精品一区中文字幕| 精品日韩在线观看| 免费成人在线影院| 久久精品视频网| 91福利在线看| 久久精工是国产品牌吗| 国产精品久久国产精麻豆99网站| 99re热这里只有精品免费视频| 亚洲美女在线一区| 欧美不卡视频一区| 欧美色区777第一页| 国产电影精品久久禁18| 一区av在线播放| 久久久久久日产精品| 欧美日韩精品一区二区三区| 国产成人自拍在线| 偷窥国产亚洲免费视频| 国产欧美一二三区| 久久影音资源网| 欧美日韩精品电影| 国产福利电影一区二区三区| 日韩av电影免费观看高清完整版在线观看| 欧美大黄免费观看| 在线播放国产精品二区一二区四区 | 国产成人亚洲精品青草天美| 亚洲成人7777| 亚洲精品欧美综合四区| 亚洲欧洲在线观看av| 国产日韩一级二级三级| 久久久九九九九| 久久精品男人天堂av| 欧美经典一区二区三区|