⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 maint.pas

📁 超市管理系统:完成日常销售任务
💻 PAS
📖 第 1 页 / 共 4 页
字号:
    PINS.SQL.ADD('   '+PAIPN  +'  ,');//是否打印发票
    PINS.SQL.ADD(' '''+PAIVO  +''',');//发票号码
    PINS.SQL.ADD('   '+P_DT+PADAT +P_DT+' ,');//销售日期
    PINS.SQL.ADD(' '''+PATME +''',');//销售时间
    PINS.SQL.ADD(' '''+RBPST  +''', '); //销售仓库
    PINS.SQL.ADD(' '''+PACNO  +''',');//信用卡号
    PINS.SQL.ADD('   '+P_DT+PACDT  +P_DT +',');//信用卡到期日
    PINS.SQL.ADD(' '''+PACNA  +''',');//信用卡人姓名
    PINS.SQL.ADD(' '''+PACKD  +''',');//信用卡类别
    PINS.SQL.ADD(' '''+PACIV  +''',');//统一编号
    PINS.SQL.ADD('   '+PABCK  +'  ,');//
    PINS.SQL.ADD('   '+PABCN  +'  ,');//
    PINS.SQL.ADD('   '+PACPD  +'  ,');//刷卡或付现
    PINS.SQL.ADD(' '''+PAWEK  +''' ');//星期几
    PINS.SQL.ADD(' )');
    TRY
    //SHOWMESSAGE(PINS.SQL.TEXT);
     PINS.EXECSQL; MEMO1.Lines.Add('销售资料 '+PUERY.FieldByName('PAENO').AsString+'已上载');
    EXCEPT         MEMO1.Lines.Add('销售资料 '+PUERY.FieldByName('PAENO').AsString+'上载失败');    END;

    //更新 LOCAL POS PAENO
    QINS.SQL.CLEAR;
    QINS.SQL.ADD('UPDATE POSA');
    QINS.SQL.ADD('SET');
    QINS.SQL.ADD(' PAENO = '+PAENO_S+',');
    QINS.SQL.ADD(' PABCN = 1           ');
    QINS.SQL.ADD(' WHERE PAENO = '''+QUERY1.FieldByName('PAENO').AsString+'''');
    try QINS.ExecSQL;
    except SHOWMESSAGE('POSA PAENO 无法更新!');   end;
    
    //更新会员消费
    IF TRIM(BMENO) <> '' THEN
       BEGIN
       BMBPO := STRTOINTDEF(UNSETREAD('SYSSET','SET_BMBPO'),1); //会员点数
       IF BMBPO <=0 THEN BMBPO := 1;
       PINS.SQL.Clear;
       PINS.SQL.ADD('UPDATE BMEM');
       PINS.SQL.ADD('SET');
       PINS.SQL.ADD(' BMBYR = BMBYR + '+BGCOT+',');
       PINS.SQL.ADD(' BMBTO = BMBTO + '+BGCOT+',');
       PINS.SQL.ADD(' BMBPO = BMBPO + '+BGCOT+'/'+INTTOSTR(BMBPO)+',');
       PINS.SQL.ADD(' BMBTM = BMBTM + 1 ,');
       PINS.SQL.ADD(' BMBDT = '+P_DT+ DATETOSTR(DATE) +P_DT);
       PINS.SQL.ADD(' WHERE BMENO = '''+BMENO+'''');
       try PINS.ExecSQL;
       except SHOWMESSAGE('BMEM 无法更新!');   end;
       END;

    //更新业务业绩
    IF TRIM(BNENO) <> '' THEN
       BEGIN
       PINS.SQL.Clear;
       PINS.SQL.ADD('UPDATE BSAL');
       PINS.SQL.ADD('SET');
       PINS.SQL.ADD(' BASYR = BASYR + '+BGCOT+',');
       PINS.SQL.ADD(' BASTO = BASTO + '+BGCOT+',');
       PINS.SQL.ADD(' BASDT = '+P_DT+ DATETOSTR(DATE) +P_DT);
       PINS.SQL.ADD(' WHERE BAENO = '''+BNENO+'''');
       try PINS.ExecSQL;
       except SHOWMESSAGE('BSAL 无法更新!');   end;
       END;




    //存入数据库
    MEMO1.Lines.Add('上传销售资料 - 销货项目 ----------');
    QUERY2.SQL.CLEAR;  //LOCAL===============================
    QUERY2.SQL.ADD('SELECT * FROM POSB');
    QUERY2.SQL.ADD('WHERE PAENO = '''+QUERY1.FieldByName('PAENO').AsString+'''');
    QUERY2.Close;
    QUERY2.OPEN;

    QUERY2.FIRST;
    WHILE NOT QUERY2.EOF DO
     BEGIN
     MEMO1.Lines.Add('上传销售资料 - '+QUERY2.FieldByName('BGENO').AsString);
     PUERY.SQL.CLEAR;      //SERVER------------------------
     PUERY.SQL.ADD('SELECT * FROM POSB');
     PUERY.SQL.ADD('WHERE PAENO = '''+QUERY1.FieldByName('PAENO').AsString+'''');
     PUERY.SQL.ADD('  AND PBENO = '''+QUERY2.FieldByName('PBENO').AsString+'''');
     PUERY.Close;
     PUERY.OPEN;

     PBENO := DBTABLEFINDMAXITM('MAINP','POSB','PAENO',PAENO_S,'PBENO',3,1);//销售ITEM
     BGENO := QUERY2.FieldByName('BGENO').AsString; //产品条形码
     BGCNT := QUERY2.FieldByName('BGCNT').AsString; //产品数量
     BGCOS := QUERY2.FieldByName('BGCOS').AsString; //产品单价
     BGCOT := QUERY2.FieldByName('BGCOT').AsString; //产品总价
     BGKIN := DB_QUERY_FIND_VALUE('BGDS','BGENO',BGENO,'BGKIN');

     //加入出货资料
     PINS.SQL.Clear;
     PINS.SQL.ADD('INSERT INTO POSB');
     PINS.SQL.ADD('( PAENO, BGENO, BGCNT, ');
     PINS.SQL.ADD('  BGCOS, BGCOT, RBCNT, ');
     PINS.SQL.ADD('  PBENO )');
     PINS.SQL.ADD('VALUES ');
     PINS.SQL.ADD('('''+PAENO_S+''',');//销售编号
     PINS.SQL.ADD(' '''+BGENO+''',');//产品条形码
     PINS.SQL.ADD('   '+BGCNT+'  ,');//产品数量
     PINS.SQL.ADD('   '+BGCOS+'  ,');//产品单价
     PINS.SQL.ADD('   '+BGCOT+'  ,');//产品总价
     PINS.SQL.ADD(' '''+RBCNT+''',');//仓库删前存量
     PINS.SQL.ADD(' '''+PBENO+''' ');//销售ITEM
     PINS.SQL.ADD(' )');
     try PINS.ExecSQL;
     except SHOWMESSAGE('POSB 无法新增!');   end;

     //更新 LOCAL POS PAENO
     QINS.SQL.CLEAR;
     QINS.SQL.ADD('UPDATE POSB');
     QINS.SQL.ADD('SET');
     QINS.SQL.ADD(' PAENO = '''+PAENO_S+''' ');
     QINS.SQL.ADD(' WHERE PAENO = '''+QUERY1.FieldByName('PAENO').AsString+'''');
     try QINS.ExecSQL;
     except SHOWMESSAGE('POSB PAENO 无法更新!');   end;
    

     //检查库存量
     RBCNT := '-999';
     PUERY.SQL.Clear;
     PUERY.SQL.Add('SELECT RBCNT FROM RBRN');
     PUERY.SQL.Add(' WHERE RBPST = '''+_SYS_RBPST+'''');
     PUERY.SQL.Add('   AND BGENO = '''+BGENO+'''');
     PUERY.Close;  PUERY.Open;
     IF QUERY1.Eof = FALSE THEN RBCNT := PUERY.FieldByName('RBCNT').AsSTRING;
     IF STRTOINTDEF(RBCNT,-999) < -998 THEN RBCNT := '-999';

     //更新库存资料 -分类999不更新库存
     IF BGKIN <> '999' THEN
        BEGIN
        FMMAIND.QUPD.SQL.Clear;
        FMMAIND.QUPD.SQL.ADD('UPDATE RBRN');
        FMMAIND.QUPD.SQL.ADD('SET');
        FMMAIND.QUPD.SQL.ADD(' RBCNT = RBCNT - '+BGCNT+' ,');
        FMMAIND.QUPD.SQL.ADD(' RBDTU = '+P_DT+ DATETOSTR(DATE)+P_DT+', ');
        FMMAIND.QUPD.SQL.ADD(' RBTMU = '''+TIME_GET_24H(TIME)+''' ');
        FMMAIND.QUPD.SQL.ADD(' WHERE BGENO = '''+BGENO+'''');
        FMMAIND.QUPD.SQL.ADD('   AND RBPST = '''+_SYS_RBPST+'''');
        try FMMAIND.QUPD.ExecSQL; except SHOWMESSAGE('RBRN 无法更新!');   end;
        END;

    QUERY2.NEXT;
    END;  // WHILE DO

  END;  // IF QUERY = TRUE

 QUERY1.Next;
 Gauge.AddProgress(1);
 END;   // WHILE DO






{  //分析资料======================================
  IF FMPOSA.AS_SAVE = TRUE THEN
     BEGIN
     T_BGCNT  := INTTOSTR(STRTOINTDEF(T_BGCNT ,0));
     T_BGCOS  := INTTOSTR(STRTOINTDEF(T_BGCOS ,0));
     AS_ASQC2 := INTTOSTR(STRTOINTDEF(AS_ASQC2,0));
     AS_BMBTH := INTTOSTR(STRTOINTDEF(AS_BMBTH,0));

     QINS.SQL.CLEAR;
     QINS.SQL.ADD('INSERT INTO ACUS');
     QINS.SQL.ADD('(PAENO,RBPST,BNENO,BGENO,BGCNT,BGCOS,');
     QINS.SQL.ADD(' ASQA1,ASQA2,ASQA3,ASQA4,ASQA5,');
     QINS.SQL.ADD(' ASQB1,ASQB2,ASQB3,ASQB4,ASQB5,');
     QINS.SQL.ADD(' ASQC1,ASQC2,BMNAM,BMBTH,BMSEX,PADAT )');
     QINS.SQL.ADD('VALUES (');
     QINS.SQL.ADD(''''+T_PAENO+''',');         //销售编号
     QINS.SQL.ADD(''''+T_RBPST+''',');         //出货仓库
     QINS.SQL.ADD(''''+_USER_ID+''',');        //员工编号
     QINS.SQL.ADD(''''+T_BGENO+''',');         //产品条形码
     QINS.SQL.ADD('  '+T_BGCNT+'  ,');         //产品数量
     QINS.SQL.ADD('  '+T_BGCOS+'  ,');         //产品单价
     QINS.SQL.ADD(''''+AS_ASQA1+''',');        //状况1
     QINS.SQL.ADD(''''+AS_ASQA2+''',');        //状况2
     QINS.SQL.ADD(''''+AS_ASQA3+''',');        //状况3
     QINS.SQL.ADD(''''+AS_ASQA4+''',');        //状况4
     QINS.SQL.ADD(''''+AS_ASQA5+''',');        //状况5
     IF AS_ASQB1 = TRUE  THEN QINS.SQL.ADD('1,') ELSE QINS.SQL.ADD('0,');  //是否1
     IF AS_ASQB2 = TRUE  THEN QINS.SQL.ADD('1,') ELSE QINS.SQL.ADD('0,');  //是否2
     IF AS_ASQB3 = TRUE  THEN QINS.SQL.ADD('1,') ELSE QINS.SQL.ADD('0,');  //是否3
     IF AS_ASQB4 = TRUE  THEN QINS.SQL.ADD('1,') ELSE QINS.SQL.ADD('0,');  //是否4
     IF AS_ASQB5 = TRUE  THEN QINS.SQL.ADD('1,') ELSE QINS.SQL.ADD('0,');  //是否5
     QINS.SQL.ADD(''''+AS_ASQC1+''',');        //星期几
     QINS.SQL.ADD('  '+AS_ASQC2+'  ,');        //同行人数
     QINS.SQL.ADD(''''+AS_BMNAM+''',');        //中文姓名
     QINS.SQL.ADD('  '+AS_BMBTH+'  ,');        //年  龄
     QINS.SQL.ADD(''''+AS_BMSEX+''',');        //性  别
     QINS.SQL.ADD(' '+_DT+DATETOSTR(FMMAIN.T_INSERT_DATE)+_DT+' )');        //销售日期
       showmessage(QINS.SQL.text);
     try QINS.ExecSQL;
     except SHOWMESSAGE('ACUS 无法新增!');   end;

     END;


 }


Gauge.Progress := 0;
END;


procedure TFMMAINT.FormCreate(Sender: TObject);
VAR SETFILENAME : STRING;
begin
SETFILENAME := 'MAINT.INI';
IF FileExists(SETFILENAME) = FALSE  THEN FILE_CREATE(SETFILENAME);

CB_SYS .Checked := INI_LOAD_BOOL(SETFILENAME,'CB_SYS'  ,FALSE);
CB_BMAN.Checked := INI_LOAD_BOOL(SETFILENAME,'CB_BMAN' ,FALSE);
CB_BGDS.Checked := INI_LOAD_BOOL(SETFILENAME,'CB_BGDS' ,FALSE);
CB_BMEM.Checked := INI_LOAD_BOOL(SETFILENAME,'CB_BMEM' ,FALSE);
CB_POSA.Checked := INI_LOAD_BOOL(SETFILENAME,'CB_POSA' ,FALSE);



P_DT := ''''; // SQL SERVER DATE

BGDS_DAT1.Text := EDATE_TO_CDATE(DATETOSTR(DATE-3 ));
BGDS_DAT2.Text := EDATE_TO_CDATE(DATETOSTR(DATE   ));
BMEM_DAT1.Text := EDATE_TO_CDATE(DATETOSTR(DATE-3 ));
BMEM_DAT2.Text := EDATE_TO_CDATE(DATETOSTR(DATE   ));
POSA_DAT1.Text := EDATE_TO_CDATE(DATETOSTR(DATE-2 ));
POSA_DAT2.Text := EDATE_TO_CDATE(DATETOSTR(DATE   ));
//
end;

procedure TFMMAINT.FormActivate(Sender: TObject);
begin
MEMO1.Lines.CLEAR;
TRY
 DATABASEP.Connected := TRUE;
 MEMO1.Lines.Add('服务器已经连接');
EXCEPT
 MEMO1.Lines.Add('服务器无法连接');
END;

end;

procedure TFMMAINT.BTNNOClick(Sender: TObject);
begin
CLOSE;
end;

procedure TFMMAINT.FormClose(Sender: TObject; var Action: TCloseAction);
VAR SETFILENAME : STRING;
begin
SETFILENAME := 'MAINT.INI';
IF FileExists(SETFILENAME) = FALSE  THEN FILE_CREATE(SETFILENAME);

INI_SAVE_BOOL(SETFILENAME,'CB_SYS'  ,CB_SYS .Checked);
INI_SAVE_BOOL(SETFILENAME,'CB_BMAN' ,CB_BMAN.Checked);
INI_SAVE_BOOL(SETFILENAME,'CB_BGDS' ,CB_BGDS.Checked);
INI_SAVE_BOOL(SETFILENAME,'CB_BMEM' ,CB_BMEM.Checked);
INI_SAVE_BOOL(SETFILENAME,'CB_POSA' ,CB_POSA.Checked);

FMMAINT.Release;
end;

procedure TFMMAINT.BTNYESClick(Sender: TObject);
begin

IF DATABASEP.Connected = FALSE THEN
   BEGIN
   MEMO1.Lines.CLEAR;
   TRY
    DATABASEP.Connected := TRUE;
    MEMO1.Lines.Add('服务器已经连接');
   EXCEPT MEMO1.Lines.Add('服务器无法连接'); END;
   END;

IF CB_SYS.Checked = TRUE THEN
   BEGIN
   //上载作业记录文件
   INS_SYSLOG;
   MEMO1.Lines.Add('上载作业记录文件完成=========================');

   //检查系统设置
   INS_SYSLST;
   MEMO1.Lines.Add('检查系统设置完成=========================');
   END;

IF CB_BMAN.Checked = TRUE THEN
   BEGIN
   //检查人员设置
   INS_BMAN;
   INS_SYSPSW;
   INS_SYSPMS;
   MEMO1.Lines.Add('检查人员设置完成=========================');
   END;

IF CB_BGDS.Checked = TRUE THEN
   BEGIN
   //检查新产品
   INS_BGDS;
   MEMO1.Lines.Add('检查新产品完成=========================');
   END;

IF CB_BMEM.Checked = TRUE THEN
   BEGIN
   //检查新会员
   INS_BMEM;
   MEMO1.Lines.Add('检查新会员完成=========================');
   END;

IF CB_POSA.Checked = TRUE THEN
   BEGIN
   //检查销售资料
   INS_POSA;
   MEMO1.Lines.Add('上载销售资料完成=======================');
   END;

end;




end.

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -