D7myYunxiang/云翔生产管理(MYSC.dll)/U_KuWeiList.pas
DESKTOP-E401PHE\Administrator 4eeb6d249c 11.5cxz
2025-11-06 09:08:40 +08:00

386 lines
10 KiB
ObjectPascal
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

unit U_KuWeiList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, ExtCtrls, ComCtrls, ToolWin, cxStyles, cxCustomData,
cxGraphics, cxFilter, cxData, cxDataStorage, cxEdit, DB, cxDBData, ADODB,
cxGridCustomPopupMenu, cxGridPopupMenu, cxGridLevel, cxClasses, cxControls,
cxGridCustomView, cxGridCustomTableView, cxGridTableView, cxGridDBTableView,
cxGrid, DBClient, cxCheckBox, cxCalendar, cxSplitter, RM_Dataset, RM_System,
RM_Common, RM_Class, RM_GridReport, RM_e_Xls, Menus, cxButtonEdit,
cxDropDownEdit, cxPC, Buttons, cxLookAndFeels, cxLookAndFeelPainters,
dxSkinsCore, dxSkinBlack, dxSkinBlue, dxSkinBlueprint, dxSkinCaramel,
dxSkinCoffee, dxSkinDarkRoom, dxSkinDarkSide, dxSkinDevExpressDarkStyle,
dxSkinDevExpressStyle, dxSkinFoggy, dxSkinGlassOceans, dxSkinHighContrast,
dxSkiniMaginary, dxSkinLilian, dxSkinLiquidSky, dxSkinLondonLiquidSky,
dxSkinMcSkin, dxSkinMetropolis, dxSkinMetropolisDark, dxSkinMoneyTwins,
dxSkinOffice2007Black, dxSkinOffice2007Blue, dxSkinOffice2007Green,
dxSkinOffice2007Pink, dxSkinOffice2007Silver, dxSkinOffice2010Black,
dxSkinOffice2010Blue, dxSkinOffice2010Silver, dxSkinOffice2013DarkGray,
dxSkinOffice2013LightGray, dxSkinOffice2013White, dxSkinPumpkin, dxSkinSeven,
dxSkinSevenClassic, dxSkinSharp, dxSkinSharpPlus, dxSkinSilver,
dxSkinSpringTime, dxSkinStardust, dxSkinSummer2008, dxSkinTheAsphaltWorld,
dxSkinsDefaultPainters, dxSkinValentine, dxSkinVS2010, dxSkinWhiteprint,
dxSkinXmas2008Blue, dxSkinscxPCPainter, cxNavigator;
type
TfrmKuWeiList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBAdd: TToolButton;
TBDel: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
Order_Main: TClientDataSet;
Panel1: TPanel;
v1Column7: TcxGridDBColumn;
ToolButton4: TToolButton;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport2: TRMXLSExport;
CDS_PRT: TClientDataSet;
Label2: TLabel;
QuYu: TEdit;
v1Column1: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column6: TcxGridDBColumn;
Label1: TLabel;
FenQu: TEdit;
Label5: TLabel;
Pai: TEdit;
Label6: TLabel;
KWName: TEdit;
Label7: TLabel;
Ceng: TEdit;
v1Column4: TcxGridDBColumn;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
Panel2: TPanel;
ComboBox1: TComboBox;
Label3: TLabel;
Tv1Column1: TcxGridDBColumn;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure ZJStatusChange(Sender: TObject);
procedure ToolButton4Click(Sender: TObject);
procedure Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
private
canshu1: string;
DQdate: TDateTime;
procedure InitGrid();
procedure InitForm();
function DelData(): Boolean;
procedure PrtData(KWID: string);
{ Private declarations }
public
FFInt, FCloth: Integer;
{ Public declarations }
end;
var
frmKuWeiList: TfrmKuWeiList;
implementation
uses
U_DataLink, U_RTFun, U_ZDYHelp, U_KuWeiInPutCeng;
{$R *.dfm}
procedure TfrmKuWeiList.FormDestroy(Sender: TObject);
begin
frmKuWeiList := nil;
end;
procedure TfrmKuWeiList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmKuWeiList.FormCreate(Sender: TObject);
begin
cxgrid1.Align := alClient;
canshu1 := Trim(DParameters1);
end;
procedure TfrmKuWeiList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><>λ<EFBFBD>б<EFBFBD>', Tv1, '<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>');
Close;
end;
procedure TfrmKuWeiList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from KuWei A where KWType=''GG'' and Valid=''Y'' ');
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmKuWeiList.InitForm();
begin
ReadCxGrid('<27><>λ<EFBFBD>б<EFBFBD>', Tv1, '<27><>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>');
InitGrid();
end;
procedure TfrmKuWeiList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmKuWeiList.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if Order_Main.Locate('SSel', True, []) = False then
begin
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
if DelData() then
begin
//Order_Main.Delete;
end;
end;
function TfrmKuWeiList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Order_Main.Locate('SSel',True,[]) do
begin
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' UPdate KuWei Set Valid=''N'', DelTime=getdate(),DelerCode=''' + Trim(DCode) + ''',Deler=''' + Trim(DName) + '''');
sql.Add(' where KWID=''' + Trim(Order_Main.fieldbyname('KWID').AsString) + '''');
ExecSQL;
end;
Order_Main.Delete;
end;
end;
Order_Main.EnableControls;
ADOQueryCmd.Connection.CommitTrans;
Result := True;
except
ADOQueryCmd.Connection.RollbackTrans;
Result := False;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><ECB3A3>', '<27><>ʾ', 0);
end;
end;
procedure TfrmKuWeiList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
TcxGridToExcel(Self.Caption, cxGrid1);
end;
procedure TfrmKuWeiList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmKuWeiList.TBAddClick(Sender: TObject);
begin
try
frmKuWeiInPutCeng := TfrmKuWeiInPutCeng.Create(Application);
with frmKuWeiInPutCeng do
begin
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmKuWeiInPutCeng.Free;
end;
end;
procedure TfrmKuWeiList.FormShow(Sender: TObject);
begin
InitForm();
end;
procedure TfrmKuWeiList.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmKuWeiList.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmKuWeiList.CustomerNoNameChange(Sender: TObject);
begin
if ADOQueryMain.Active = False then
Exit;
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
end;
procedure TfrmKuWeiList.N2Click(Sender: TObject);
begin
SelOKNo(Order_Main, false);
end;
procedure TfrmKuWeiList.N1Click(Sender: TObject);
begin
SelOKNo(Order_Main, True);
end;
procedure TfrmKuWeiList.cxTabControl1Change(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmKuWeiList.ZJStatusChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmKuWeiList.ToolButton4Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if Trim(ComboBox1.Text) = '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>գ<EFBFBD>', '<27><>ʾ', 0);
Exit;
end;
if Order_Main.Locate('SSel', True, []) = False then
begin
Application.MessageBox(<><C3BB>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
Order_Main.DisableControls;
with Order_Main do
begin
First;
while Locate('SSel', True, []) do
begin
PrtData(Trim(Order_Main.fieldbyname('KWID').AsString));
Edit;
FieldByName('SSel').Value := False;
end;
end;
Order_Main.EnableControls;
end;
procedure TfrmKuWeiList.PrtData(KWID: string);
var
fPrintFile, Txt, fImagePath: string;
i, j: Integer;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><>λ<EFBFBD><CEBB>ǩ.rmf';
if FileExists(fPrintFile) = False then
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + ExtractFilePath(Application.ExeName) + 'Report\<5C><>λ<EFBFBD><CEBB>ǩ.rmf'), '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
Close;
SQL.Clear;
sql.Add('select * from KuWei where KWID=''' + Trim(KWID) + '''');
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_PRT);
SInitCDSData20(ADOQueryTemp, CDS_PRT);
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(KWID);
fImagePath := ExtractFilePath(Application.ExeName) + 'image\temp.bmp';
if not DirectoryExists(pchar(ExtractFilePath(Application.ExeName) + 'image')) then
CreateDirectory(pchar(ExtractFilePath(Application.ExeName) + 'image'), nil);
if FileExists(fImagePath) then
DeleteFile(fImagePath);
Makebar(pchar(Txt), Length(Txt), 3, 3, 0, PChar(fImagePath), 3);
except
application.MessageBox('<27><>ά<EFBFBD><CEAC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
RMVariables['QRBARCODE'] := fImagePath;
if Trim(ComboBox1.Text) = '<27><>' then
begin
RMVariables['FangXiang'] := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
end
else if Trim(ComboBox1.Text) = '<27><>' then
begin
RMVariables['FangXiang'] := '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>';
end;
RM1.LoadFromFile(fPrintFile);
//RM1.ShowReport;
RM1.PrintReport;
end;
procedure TfrmKuWeiList.Tv1CellDblClick(Sender: TcxCustomGridTableView; ACellViewInfo: TcxGridTableDataCellViewInfo; AButton: TMouseButton; AShift: TShiftState; var AHandled: Boolean);
begin
ModalResult := 1;
end;
end.