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

📄 uhm.pas

📁 在打沙场用的最简单
💻 PAS
📖 第 1 页 / 共 2 页
字号:
    Readln(ini,usercode);
    ii:=length(usercode);
    jj:=Pos(',',usercode);
    str1:=copy(usercode,1,jj-1);
    ///////////////////   str1
    usercode:= copy(usercode,jj+1,ii-jj);
    ii:=length(usercode);
    jj:=Pos(',',usercode) ;
    str2:=copy(usercode,1,jj-1);
    //////////////////////    str2

    usercode:= copy(usercode,jj+1,ii-jj);
    ii:=length(usercode);
    jj:=Pos(',',usercode) ;
    str3:=copy(usercode,1,jj-1);
    /////////////////////////////str3
    str4:= copy(usercode,jj+1,ii-jj);
    ///////////////////////////////////str4
    spbtnadd.Click;
    CdsSub.Append;
    GetsqlData(CDSselectsub,'Vitem','fid','fcode='+vartosql(str1),1);
    if CDSselectsub.RecordCount > 0 then
     begin
     //  CDSsub['fid']:=i;
       CDSsub['fitemid']:=CDSselectsub['fid'] ;
       CDSsub['fcode']:=CDSselectsub['fcode'];
       CDSsub['fname']:=CDSselectsub['fname'];
       CDSsub['funit']:=CDSselectsub['funit'];
       CDSsub['unitqty']:=CDSselectsub['unitqty'];
       CDSsub['fqty'] :=strtofloat( str2);
       CDSsub['total'] :=CDSselectsub['unitqty']*CDSsub['fqty'];
     end;
       Grid.SelectedIndex:=7;
     //i:=i+1;
 // CdsSub.FieldByName('fcode').AsString:=str1;
//  CdsSub.FieldByName('fqty').AsString:=str2;
 end;
     CloseFile(ini);
end;





end;

procedure Tfrmhm.PDJComEdit1ClickButton(Sender: TObject);
var
  s,str1,str2,str3,str4:string;
  i,  ii,jj:integer;
  ini:textfile;
  Searcht, usercode:string;
begin
  inherited;
    if cdsmaster.State in  [dsedit,dsinsert] then
    begin
    adoquery1.SQL.Clear;
    adoquery1.SQL.Add('select  a.fitemid,a.fqty,a.fprice,a.gno,a.color,a.colorno,a.total,a.fnote,b.fpurno,b.fprovider,b.fpurer,b.fpurstore,');
    adoquery1.SQL.add('   b.frefno,b.fdelivdate,b.fnote as note2,b.fcreauser,b.pno,b.fprice as price2,');
    adoquery1.SQL.add('  c.fid,c.fcode,c.fname,c.funit,c.ftype,c.zs from Tfzsub a,Tfz  b ,titem c');
    adoquery1.SQL.add('  where a.fresid=b.fresid  and c.fid=a.fitemid');
    if billno.text<>'' then
    begin
    adoquery1.SQL.add(' and b.frefno =:frefno');
    adoquery1.Parameters.ParamByName('frefno').Value:=billno.Text;
    end;

    if wwDBEdit2.Text<>'' then
    begin
    adoquery1.SQL.add(' and b.pno =:pno');
    adoquery1.Parameters.ParamByName('pno').Value:=wwdbedit2.Text;
    end;

    adoquery1.Open;
    adoquery1.First;
    while not adoquery1.Eof  do
    begin
    spbtnadd.Click;
    CdsSub.Append;
      GetsqlData(CDSselectsub,'Vitem','fid','fid='+vartosql(adoquery1.fieldbyname('fID').Value),1);
      if CDSselectsub.RecordCount > 0 then
        begin
          CDSsub['fitemid']:=adoquery1.fieldbyname('fID').Value;
          CDSsub['fcode']:=CDSselectsub['fcode'];
          CDSsub['fname']:=CDSselectsub['fname'];
          CDSsub['ftype'] :=CDSselectsub['ftype'];
          CDSsub['funit']:=CDSselectsub['funit'];
          CDSsub['zs']:=CDSselectsub['zs'];
          CDSsub['gno'] :=adoquery1.fieldbyname('gno').Value;
          CDSsub['colorno'] :=adoquery1.fieldbyname('colorno').Value;
          GetsqlData(CDSselectsub,'vfzsub','colorno','colorno='+vartosql(adoquery1.fieldbyname('colorno').Value),1);
         if CDSselectsub.RecordCount > 0 then
          CDSsub['color']:=CDSselectsub['color'];
          CDSsub['fqty'] :=    adoquery1.fieldbyname('fqty').Value;
          CDSsub['fprice'] :=    adoquery1.fieldbyname('fprice').Value;
          CDSsub['total'] := adoquery1.fieldbyname('total').Value;   //adoquery1.fieldbyname('fqty').Value*adoquery1.fieldbyname('fprice').Value;
        end;

    adoquery1.Next;
 end;
    if adoquery1.RecordCount>0 then
     BEGIN
    // CDSmaster.Append;
    GetsqlData(CDSselectsub,'Vfz','frefno','frefno='+vartosql(adoquery1.fieldbyname('frefno').asstring),1);
    if cdsselectsub.RecordCount>0 then
    begin
    if  CDSselectsub['frefno']<>NULL then
    CDSmaster['fstoreno']:=CDSselectsub['frefno'];//searq.fieldbyname('fpurstore').asstring;//'货编号';
    if  CDSselectsub['fpurstore']<>NULL then
    CDSmaster['fpurstore']:=CDSselectsub['fpurstore'];//searq.fieldbyname('fpurstore').asstring;//'仓库';
    if CDSselectsub['fpurer']<>NULL then
    CDSmaster['fpurer']:=CDSselectsub['fpurer'];//searq.fieldbyname('fpurer').asstring;//'负责人';
    if  CDSselectsub['fprovider']<>null then
    CDSmaster['fprovider']:=CDSselectsub['fprovider'];//searq.fieldbyname('fprovider').asstring;//'供应商';
    if  CDSselectsub['fnote']<>null then
    CDSmaster['fnote']:=CDSselectsub['fnote'];//searq.fieldbyname('fnote').asstring;//'备注';
    if CDSselectsub['fdelivdate']<>null then
    CDSmaster['fdelivdate']:=CDSselectsub['fdelivdate'];//searq.fieldbyname('fdelivdate').asstring;//'交货日期';
    if  CDSselectsub['fcreauser']<>null then
    CDSmaster['fcreauser']:=CDSselectsub['fcreauser'];//searq.fieldbyname('fcreauser').asstring;//'创建人';
    if CDSselectsub['fcreadate'] <>null then
    CDSmaster['fcreadate']:=CDSselectsub['fcreadate'];//searq.fieldbyname('fcreadate').asstring;//'订货日期';
    if CDSselectsub['fkh'] <>null then
    CDSmaster['fkh']:=CDSselectsub['fkh'];//searq.fieldbyname('fcreadate').asstring;//'订货日期';
    if CDSselectsub['fks'] <>null then
    CDSmaster['fks']:=CDSselectsub['fks'];//searq.fieldbyname('fcreadate').asstring;//'订货日期';
    if CDSselectsub['fgx'] <>null then
    CDSmaster['fgx']:=CDSselectsub['fgx'];//searq.fieldbyname('fcreadate').asstring;//'订货日期';    
    end;
     END;
 //  Grid.SelectedIndex:=7;
 end;
end;

procedure Tfrmhm.p05Execute(Sender: TObject);
var
  excelid, mybook: variant;
  row, col, i, j, colcount, frow: integer;
  excelflg: boolean;
  rpstr: string;
  per_count,  datasum, dsum1, dsum2: integer;
  datas1, datas2, datas3: string;
begin
  //inherited;
  CDSsub.DisableControls;
  try
    excelid := createoleobject('excel.application');
    mybook := createoleobject('excel.sheet');
    mybook := excelid.workbooks.add;
    row := 1;
    col := 1;
    excelflg := true;
  except
    excelflg := false;
    application.MessageBox('请确定EXCEL是否正确安装!', '提示信息', mb_ok);
  end;
  if excelflg then
  begin
      colcount := 7;
      excelid.range['A' + inttostr(row), chr(64 + colcount) +
        inttostr(row)].merge();
      mybook.worksheets[1].cells.item[row, col] :=  '基本报表';
      mybook.worksheets[1].cells.item[row, col].font.size := 18;
      mybook.worksheets[1].cells.item[row, col].font.bold := true;
      mybook.worksheets[1].cells.item[row, col].HorizontalAlignment := xlcenter;
      row := row + 1;
      excelid.range['A' + inttostr(row), chr(64 + colcount) +
        inttostr(row)].merge();
      mybook.worksheets[1].cells.item[row, col] := '报表日期:' +
        datetostr(date);
      row := row + 1;
      frow := row;
      CDSsub.First;

        excelid.columns[1].ColumnWidth := Grid.Columns[0].Width / 8;
        excelid.columns[1].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 1] := grid.Columns[0].Title.Caption;

        excelid.columns[2].ColumnWidth := Grid.Columns[1].Width / 8;
        excelid.columns[2].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 2] := grid.Columns[1].Title.Caption;

        excelid.columns[3].ColumnWidth := Grid.Columns[2].Width / 8;
        excelid.columns[3].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 3] := grid.Columns[2].Title.Caption;

        excelid.columns[4].ColumnWidth := Grid.Columns[3].Width / 8;
        excelid.columns[4].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 4] := grid.Columns[3].Title.Caption;

        excelid.columns[5].ColumnWidth := Grid.Columns[4].Width / 8;
        excelid.columns[5].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 5] := grid.Columns[4].Title.Caption;

        excelid.columns[6].ColumnWidth := Grid.Columns[5].Width / 8;
        excelid.columns[6].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 6] := grid.Columns[5].Title.Caption;

        excelid.columns[7].ColumnWidth := Grid.Columns[6].Width / 8;
        excelid.columns[7].NumberFormatLocal := '@';
        mybook.worksheets[1].cells.item[row, 7] := grid.Columns[6].Title.Caption;
      row := row + 1;
      while not CDSsub.Eof do
      begin

          mybook.worksheets[1].cells.item[row, 1] :=CDSsub['fid'];
          mybook.worksheets[1].cells.item[row, 2] := CDSsub['fcode'];
          mybook.worksheets[1].cells.item[row, 3] := CDSsub['fname'];
          mybook.worksheets[1].cells.item[row, 4] := CDSsub['funit'];
          mybook.worksheets[1].cells.item[row, 5] := CDSsub['fqty'];
          mybook.worksheets[1].cells.item[row, 6] := CDSsub['unitqty'];
          mybook.worksheets[1].cells.item[row, 7] := CDSsub['total'];


          row := row + 1;
          CDSsub.Next;
      end;
      excelid.range['A' + inttostr(row), chr(64 + colcount) +
        inttostr(row)].merge();
      mybook.worksheets[1].cells.item[row, col].font.size := 12;
      mybook.worksheets[1].cells.item[row, col].font.bold := true;
      mybook.worksheets[1].cells.item[row, col].HorizontalAlignment := xlcenter;
      mybook.worksheets[1].cells.item[row, col] := '总记录数:' +
       inttostr(CDssub.RecordCount) + '条';
      row := row + 1;
      rpstr := '报表条件:';
      excelid.range['A' + inttostr(row), chr(64 + colcount) +
        inttostr(row)].merge();
      mybook.worksheets[1].cells.item[row, col] := rpstr;
      row := row + 1;
      excelid.range[chr(65) + inttostr(frow), chr(64 + colcount) + inttostr(row
        - 1)].Borders[1].LineStyle := xlContinuous;
      excelid.range[chr(65) + inttostr(frow), chr(64 + colcount) + inttostr(row
        - 1)].Borders[2].LineStyle := xlContinuous;
      excelid.range[chr(65) + inttostr(frow), chr(64 + colcount) + inttostr(row
        - 1)].Borders[3].LineStyle := xlContinuous;
      excelid.range[chr(65) + inttostr(frow), chr(64 + colcount) + inttostr(row
        - 1)].Borders[4].LineStyle := xlContinuous;
    excelid.visible := true;
  end;
  CDSsub.EnableControls;  
end;

procedure Tfrmhm.acaddExecute(Sender: TObject);
begin
  inherited;
   wwDBLookupCombo1.Text:='亿溢';
end;

procedure Tfrmhm.GridColExit(Sender: TObject);
begin
  inherited;
    case grid.SelectedIndex of
  0,1:begin
  if  CDSsub.State in [dsEdit,dsinsert] then
  begin
     GetsqlData(CDSselectsub,'Vitem','fid','fcode='+vartosql(CDSsub['fcode']),1);
       if CDSselectsub.RecordCount > 0 then
       begin
       CDSsub['fitemid']:=CDSselectsub['fid'] ;
       CDSsub['fname']:=CDSselectsub['fname'];
       CDSsub['fcode']:=CDSselectsub['fcode'];
       CDSsub['ftype'] :=CDSselectsub['ftype'];
       CDSsub['funit']:=CDSselectsub['funit'];
       CDSsub['zs']:=CDSselectsub['zs'];
//       CDSsub['fqty'] :=CDSsub['js']*CDSsub['avgh']/CDSsub['qtyunit']*(1+CDSsub['rs']+CDSsub['dps']+CDSsub['zz']);
       end else
       begin
        MessageDlg('没找到相应的资料 ? ',mtWarning,[MBOK],0);
       end;
  end;
 end;
 end; 
end;

procedure Tfrmhm.GridKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  inherited;
 if grid.SelectedIndex=0 then 
 if  char(key)='p' then 
 if cdssub.State in [dsedit,dsinsert] then
  Selectsub;
end;

end.

⌨️ 快捷键说明

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