D7myYunxiang/云翔一码通/U_YMTRKList.pas

685 lines
19 KiB
ObjectPascal
Raw Normal View History

2025-07-26 10:46:46 +08:00
unit U_YMTRKList;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, cxStyles, cxCustomData, cxGraphics, cxFilter, cxData, cxDataStorage,
cxEdit, DB, cxDBData, cxGridCustomTableView, cxGridTableView,
cxGridBandedTableView, cxGridDBBandedTableView, cxGridLevel, cxClasses,
cxControls, cxGridCustomView, cxGridDBTableView, cxGrid, StdCtrls, ComCtrls,
ExtCtrls, ToolWin, cxGridCustomPopupMenu, cxGridPopupMenu, ADODB, DBClient,
cxDropDownEdit, cxCheckBox, RM_Common, RM_Class, RM_e_Xls, RM_Dataset,
RM_System, RM_GridReport, Menus, cxCalendar, cxButtonEdit, cxTextEdit,
cxContainer, cxImage, cxDBEdit, 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,
2025-09-20 10:39:47 +08:00
dxSkinXmas2008Blue, dxSkinscxPCPainter, cxNavigator, cxCurrencyEdit,
cxMaskEdit;
2025-07-26 10:46:46 +08:00
type
TfrmYMTRKList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBExport: TToolButton;
TBClose: TToolButton;
Panel1: TPanel;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
cxGridPopupMenu1: TcxGridPopupMenu;
Label1: TLabel;
Label2: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CDS_Main: TClientDataSet;
RM1: TRMGridReport;
RMDBMain: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
RMDBHZ: TRMDBDataSet;
CDS_HZ: TClientDataSet;
CDS_PRT: TClientDataSet;
TBDel: TToolButton;
PopupMenu1: TPopupMenu;
N1: TMenuItem;
N2: TMenuItem;
TBAdd: TToolButton;
TBEdit: TToolButton;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label8: TLabel;
SPName: TEdit;
FactoryName: TEdit;
SPID: TEdit;
SPSpec: TEdit;
Label6: TLabel;
SPCF: TEdit;
Label7: TLabel;
OrderNo: TEdit;
cxGrid2: TcxGrid;
Tv1: TcxGridDBTableView;
2025-09-26 16:19:47 +08:00
v1Column6: TcxGridDBColumn;
2025-07-26 10:46:46 +08:00
v1Column2: TcxGridDBColumn;
v1Column4: TcxGridDBColumn;
v1Column13: TcxGridDBColumn;
v1Column15: TcxGridDBColumn;
2025-09-26 16:19:47 +08:00
v1Column17: TcxGridDBColumn;
2025-07-26 10:46:46 +08:00
v1Column14: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v1Column8: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column11: TcxGridDBColumn;
v1Column9: TcxGridDBColumn;
v2Column6: TcxGridDBColumn;
v1Column3: TcxGridDBColumn;
v1Column16: TcxGridDBColumn;
v1Column12: TcxGridDBColumn;
cxGrid2Level1: TcxGridLevel;
Label9: TLabel;
ToFactoryName: TEdit;
Label12: TLabel;
CRType: TComboBox;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
Label11: TLabel;
RCGangNo: TEdit;
Label13: TLabel;
2025-09-20 10:39:47 +08:00
SPColor: TEdit;
2025-07-26 10:46:46 +08:00
Label15: TLabel;
2025-09-20 10:39:47 +08:00
SPHX: TEdit;
2025-07-26 10:46:46 +08:00
ADOQueryImage: TADOQuery;
v1Column21: TcxGridDBColumn;
cxGrid1: TcxGrid;
TvMX: TcxGridDBTableView;
2025-08-08 10:52:04 +08:00
TvMXMXQty: TcxGridDBColumn;
2025-07-26 10:46:46 +08:00
cxGridLevel2: TcxGridLevel;
CDS_MX: TClientDataSet;
DS_MX: TDataSource;
cxGridPopupMenu2: TcxGridPopupMenu;
2025-08-07 11:08:39 +08:00
ToolButton1: TToolButton;
ToolButton2: TToolButton;
2025-08-08 10:52:04 +08:00
TvMXMXID: TcxGridDBColumn;
Panel2: TPanel;
ToolBar2: TToolBar;
2025-08-08 17:35:13 +08:00
TbAddRow: TToolButton;
TbDeleteRow: TToolButton;
2025-08-08 10:52:04 +08:00
Panel3: TPanel;
2025-08-08 17:35:13 +08:00
AddNum: TEdit;
2025-08-08 10:52:04 +08:00
Label17: TLabel;
Button1: TButton;
2025-09-20 10:39:47 +08:00
TvMXSsel: TcxGridDBColumn;
TbEditKW: TToolButton;
Tv1SSel: TcxGridDBColumn;
Panel4: TPanel;
Label25: TLabel;
btnChk: TButton;
btn1: TButton;
KuWei: TcxButtonEdit;
2025-09-26 16:19:47 +08:00
Tv1Column1: TcxGridDBColumn;
Tv1Column2: TcxGridDBColumn;
2025-09-29 09:29:56 +08:00
Tv1Column3: TcxGridDBColumn;
TvMXColumn1: TcxGridDBColumn;
Tv1Column4: TcxGridDBColumn;
2025-07-26 10:46:46 +08:00
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure ConNoMChange(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure N1Click(Sender: TObject);
procedure N2Click(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure SPIDChange(Sender: TObject);
procedure SPSpecChange(Sender: TObject);
procedure FactoryNameChange(Sender: TObject);
procedure TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
procedure Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
2025-08-07 11:08:39 +08:00
procedure ToolButton1Click(Sender: TObject);
procedure ToolButton2Click(Sender: TObject);
2025-08-08 17:35:13 +08:00
procedure TbAddRowClick(Sender: TObject);
procedure TbDeleteRowClick(Sender: TObject);
procedure Button1Click(Sender: TObject);
2025-09-20 10:39:47 +08:00
procedure TbEditKWClick(Sender: TObject);
procedure KuWeiPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
procedure btnChkClick(Sender: TObject);
procedure btn1Click(Sender: TObject);
2025-07-26 10:46:46 +08:00
private
canshu1, canshu2: string;
procedure InitGrid();
procedure InitImage(fsubID: string);
2025-08-08 17:35:13 +08:00
procedure InitMXGrid(SPID: string);
2025-07-26 10:46:46 +08:00
{ Private declarations }
public
{ Public declarations }
end;
var
frmYMTRKList: TfrmYMTRKList;
implementation
uses
2025-09-20 10:39:47 +08:00
U_DataLink, U_RTFun, U_YMTRKInPut, U_ZdyAttachGYS, U_LabelPrintFun,
2025-09-26 16:19:47 +08:00
U_ZDYHelp;
2025-07-26 10:46:46 +08:00
{$R *.dfm}
2025-08-08 10:52:04 +08:00
procedure TfrmYMTRKList.InitMXGrid(SPID: string);
2025-07-26 10:46:46 +08:00
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
2025-08-08 17:35:13 +08:00
sql.Add('select * from YMT_CK_MX where 1 = 1 and SPID=' + quotedstr(Trim(SPID)));
2025-07-26 10:46:46 +08:00
sql.Add(' order by MXID');
Open;
end;
SCreateCDS20(ADOQueryTemp, CDS_MX);
SInitCDSData20(ADOQueryTemp, CDS_MX);
end;
procedure TfrmYMTRKList.InitImage(fsubID: string);
begin
ADOQueryImage.close;
// IF fwbid='' then exit;
with ADOQueryImage do
begin
close;
sql.Clear;
sql.Add('select * from TP_File A');
sql.Add('inner join JYOrder_Sub B on B.HXFile=A.WBID');
sql.Add('where B.SubID=' + quotedstr(trim(fsubID)));
open;
end;
end;
procedure TfrmYMTRKList.FormDestroy(Sender: TObject);
begin
frmYMTRKList := nil;
end;
procedure TfrmYMTRKList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmYMTRKList.FormCreate(Sender: TObject);
begin
//cxGrid1.Align:=alClient;
canshu1 := Trim(DParameters1);
canshu2 := Trim(DParameters2);
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime;
end;
procedure TfrmYMTRKList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
sql.Add(' select A.* ');
sql.Add(' from YMT_CK_CR A');
sql.add(' where A.CRTime>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.DateTime)) + '''');
sql.Add(' and A.CRTime<=''' + Trim(FormatDateTime('yyyy-MM-dd', enddate.DateTime + 1)) + '''');
sql.Add(' and isnull(CKName,'''')=''<27><><EFBFBD>첼''');
SQL.Add(' and CRFlag=''<27><><EFBFBD><EFBFBD>'' ');
Open;
//ShowMessage(SQL.Text);
end;
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
2025-08-08 17:35:13 +08:00
InitMXGrid(Trim(CDS_Main.fieldbyname('SPID').AsString));
2025-07-26 10:46:46 +08:00
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmYMTRKList.TBRafreshClick(Sender: TObject);
begin
BegDate.SetFocus;
InitGrid();
end;
procedure TfrmYMTRKList.ConNoMChange(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
end;
end;
procedure TfrmYMTRKList.TBCloseClick(Sender: TObject);
begin
WriteCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
WriteCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>2', TvMX, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
Close;
end;
procedure TfrmYMTRKList.FormShow(Sender: TObject);
begin
if Trim(canshu2) = '<27>鿴' then
begin
TBAdd.Visible := False;
TBDel.Visible := False;
TBEdit.Visible := False;
end
else
begin
TBAdd.Visible := True;
TBDel.Visible := True;
TBEdit.Visible := True;
end;
2025-09-29 16:40:01 +08:00
// ReadCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
// ReadCxGrid('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>2', TvMX, '<27><><EFBFBD><EFBFBD>ֿ<EFBFBD>');
2025-08-08 17:35:13 +08:00
InitGrid();
2025-07-26 10:46:46 +08:00
end;
procedure TfrmYMTRKList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
exit;
TcxGridToExcel('<27><><EFBFBD><EFBFBD><ECB2BC><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>', cxGrid2);
end;
procedure TfrmYMTRKList.TBFindClick(Sender: TObject);
begin
if ADOQueryMain.Active then
begin
SDofilter(ADOQueryMain, SGetFilters(Panel1, 1, 2));
SCreateCDS20(ADOQueryMain, CDS_Main);
SInitCDSData20(ADOQueryMain, CDS_Main);
end;
end;
procedure TfrmYMTRKList.N1Click(Sender: TObject);
begin
SelOKNo(CDS_Main, True);
end;
procedure TfrmYMTRKList.N2Click(Sender: TObject);
begin
SelOKNo(CDS_Main, False);
end;
procedure TfrmYMTRKList.TBDelClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
Exit;
if Trim(CDS_Main.fieldbyname('SPID').AsString) <> '' then
begin
if Trim(CDS_Main.fieldbyname('CRType').AsString) = 'ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add('select * from YMT_CK_CR where FZSPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
sql.Add(' and CRQtyFlag=-1');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27><><EFBFBD>г<EFBFBD><D0B3><EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><C2BC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE>!', '<27><>ʾ', 0);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', '<27><>ʾ', 32 + 4) <> IDYES then
Exit;
try
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add(' delete YMT_CK_CR where SPID=''' + Trim(CDS_Main.fieldbyname('SPID').AsString) + '''');
ExecSQL;
end;
ADOQueryCmd.Connection.CommitTrans;
CDS_Main.Delete;
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox(<><C9BE><EFBFBD>쳣!', '<27><>ʾ', 0);
end;
end
else
begin
CDS_Main.Delete;
end;
end;
procedure TfrmYMTRKList.TBAddClick(Sender: TObject);
begin
try
frmYMTRKInPut := TfrmYMTRKInPut.Create(Application);
with frmYMTRKInPut do
begin
PState := 0;
2025-07-26 10:46:46 +08:00
FBCId := '';
if ShowModal = 1 then
begin
Self.InitGrid();
end;
end;
finally
frmYMTRKInPut.Free;
end;
end;
procedure TfrmYMTRKList.TBEditClick(Sender: TObject);
2025-09-20 10:39:47 +08:00
var
OldSPID: string; // <20><><EFBFBD>ڱ<EFBFBD><DAB1>浱ǰ<E6B5B1>е<EFBFBD>SPID
2025-07-26 10:46:46 +08:00
begin
if CDS_Main.IsEmpty then
Exit;
if Trim(CDS_Main.fieldbyname('CRType').AsString) = 'ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' then
begin
Application.MessageBox('ƽ<><C6BD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ<EFBFBD>Զ<EFBFBD><D4B6><EFBFBD><EFBFBD>ɣ<EFBFBD><C9A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
2025-09-20 10:39:47 +08:00
OldSPID := Trim(CDS_Main.fieldbyname('SPID').AsString);
2025-07-26 10:46:46 +08:00
frmYMTRKInPut := TfrmYMTRKInPut.Create(Application);
with frmYMTRKInPut do
begin
PState := 1;
2025-09-20 10:39:47 +08:00
FBCId := OldSPID;
2025-07-26 10:46:46 +08:00
TBDel.Visible := False;
TBAdd.Visible := False;
if ShowModal = 1 then
begin
2025-09-20 10:39:47 +08:00
2025-07-26 10:46:46 +08:00
end;
end;
2025-09-20 10:39:47 +08:00
InitGrid();
// <20><><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>ԭ<EFBFBD><D4AD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
if not CDS_Main.Locate('SPID', OldSPID, []) then
begin
// <20><><EFBFBD><EFBFBD><EFBFBD>Ҳ<EFBFBD><D2B2><EFBFBD>ԭ<EFBFBD><D4AD>¼<EFBFBD><C2BC><EFBFBD>类ɾ<E7B1BB><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB><EFBFBD><EFBFBD>һ<EFBFBD><D2BB><EFBFBD><EFBFBD>¼
if not CDS_Main.IsEmpty then
CDS_Main.First;
end;
2025-07-26 10:46:46 +08:00
finally
frmYMTRKInPut.Free;
end;
end;
procedure TfrmYMTRKList.SPIDChange(Sender: TObject);
begin
if Length(Trim(SPID.Text)) < 4 then
begin
if Trim(SPID.Text) <> '' then
Exit;
end;
TBFind.Click;
end;
procedure TfrmYMTRKList.SPSpecChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmYMTRKList.FactoryNameChange(Sender: TObject);
begin
TBFind.Click;
end;
procedure TfrmYMTRKList.TvMXCustomDrawIndicatorCell(Sender: TcxGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxCustomGridIndicatorItemViewInfo; var ADone: Boolean);
var
FValue: string;
FBounds: TRect;
begin
FBounds := AViewInfo.Bounds;
if (AViewInfo is TcxGridIndicatorRowItemViewInfo) then
begin
ACanvas.FillRect(FBounds);
ACanvas.DrawComplexFrame(FBounds, clBtnHighlight, clBtnShadow, [bBottom, bLeft, bRight], 1);
FValue := IntToStr(TcxGridIndicatorRowItemViewInfo(AViewInfo).GridRecord.Index + 1);
InflateRect(FBounds, -1, -1); //Platform specific. May not work on Linux.
ACanvas.Font.Color := clBlack;
ACanvas.Brush.Style := bsClear;
ACanvas.DrawText(FValue, FBounds, cxAlignCenter or cxAlignTop);
ADone := True;
end;
end;
procedure TfrmYMTRKList.Tv1FocusedRecordChanged(Sender: TcxCustomGridTableView; APrevFocusedRecord, AFocusedRecord: TcxCustomGridRecord; ANewItemRecordFocusingChanged: Boolean);
begin
InitMXGrid(Trim(CDS_Main.fieldbyname('SPID').AsString));
end;
2025-08-07 11:08:39 +08:00
procedure TfrmYMTRKList.ToolButton1Click(Sender: TObject);
var
2025-08-12 16:22:08 +08:00
FPrintJson, JsonResult, MFiltration: string;
2025-09-20 10:39:47 +08:00
RTValues: TStringArray;
2025-08-07 11:08:39 +08:00
begin
2025-08-12 16:22:08 +08:00
if CDS_Main.IsEmpty then
Exit;
2025-09-20 10:39:47 +08:00
if CDS_MX.Locate('SSel', True, []) then
begin
RTValues := SelCDSKey(CDS_MX, ['MXID']);
MFiltration := RTValues[0];
end
else
begin
MFiltration := Trim(CDS_Main.fieldbyname('SPID').AsString);
end;
2025-08-30 14:29:28 +08:00
FPrintJson := '{ "LMType": "LMType","QrCodeField": "MXID","PreviewPrint": true,"DConString": "' + DConString + '","DCode": "' + DCode + '","DName": "' + DName + '", "PrtArgs": [ { "IsSql": true, "Filtration": " ' + MFiltration + '" }] }';
2025-08-07 11:08:39 +08:00
2025-08-12 16:22:08 +08:00
FormPrint(Application, PChar(FPrintJson));
2025-08-07 11:08:39 +08:00
end;
procedure TfrmYMTRKList.ToolButton2Click(Sender: TObject);
var
2025-08-12 16:22:08 +08:00
MPrintJson, JsonResult, MFiltration: string;
2025-08-07 11:08:39 +08:00
begin
2025-08-12 16:22:08 +08:00
if CDS_Main.IsEmpty then
Exit;
MFiltration := Trim(CDS_Main.fieldbyname('SPID').AsString);
2025-08-30 13:46:21 +08:00
MPrintJson := '{ "LBName": "<22><>ǩ<EFBFBD><C7A9>ӡ","QrCodeField": "MXID","DConString": "' + DConString + '","DCode": "' + DCode + '","DName": "' + DName + '","IsPreview": true,"printerIndex": 0,"ExportFileType": "", "PrtArgs": [ {"SqlStr": "EXEC P_YMT_CK_MX_Prt1 ''' + MFiltration + ''' " }] }';
2025-08-12 16:22:08 +08:00
FunPrint(Application, PChar(MPrintJson));
2025-08-07 11:08:39 +08:00
end;
2025-08-08 17:35:13 +08:00
procedure TfrmYMTRKList.TbAddRowClick(Sender: TObject);
2025-08-12 16:22:08 +08:00
var
MaxNo, MMXID, SPID: string;
2025-08-08 17:35:13 +08:00
begin
2025-08-12 16:22:08 +08:00
// with CDS_MX do
// begin
// Append;
// FieldByName('MXID').Value := '';
// FieldByName('MXQty').Value := 0;
// Post;
// end;
if GetLSNo(ADOQueryTemp, MaxNo, 'MCM', 'YMT_CK_MX', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
MMXID := Trim(MaxNo);
SPID := Trim(CDS_Main.fieldbyname('SPID').AsString);
with ADOQueryCmd do
2025-08-08 17:35:13 +08:00
begin
2025-08-12 16:22:08 +08:00
Close;
SQL.Clear;
sql.Add('insert into YMT_CK_MX (MXID,SPID,MXQty)');
sql.Add('values(' + quotedstr(MMXID));
sql.Add(',' + quotedstr(Trim(SPID)));
sql.Add(',0');
sql.Add(')');
ExecSQL;
2025-08-08 17:35:13 +08:00
end;
2025-08-12 16:22:08 +08:00
InitMXGrid(SPID);
2025-08-08 17:35:13 +08:00
end;
procedure TfrmYMTRKList.TbDeleteRowClick(Sender: TObject);
var
Bookmark: TBookmark;
begin
if CDS_MX.IsEmpty then
begin
Application.MessageBox('<27><>ǰû<C7B0>п<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD>ļ<EFBFBD>¼<EFBFBD><C2BC>', '<27><>ʾ', MB_ICONWARNING);
Exit;
end;
if Application.MessageBox(<><C8B7>Ҫɾ<D2AA><C9BE><EFBFBD><EFBFBD>ǰ<EFBFBD><C7B0><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', <><C8B7>ɾ<EFBFBD><C9BE>', MB_ICONQUESTION + MB_YESNO) <> IDYES then
Exit;
2025-08-12 16:22:08 +08:00
// <20><>¼<EFBFBD><C2BC>ǰ<EFBFBD>У<EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Իص<D4BB><D8B5><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD><CEBB>
2025-08-08 17:35:13 +08:00
Bookmark := CDS_MX.GetBookmark;
2025-08-12 16:22:08 +08:00
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('delete YMT_CK_MX where MXID=' + quotedstr(Trim(CDS_MX.FieldByName('MXID').AsString)));
ExecSQL;
end;
2025-08-08 17:35:13 +08:00
try
CDS_MX.Delete;
finally
if CDS_MX.BookmarkValid(Bookmark) then
CDS_MX.GotoBookmark(Bookmark);
CDS_MX.FreeBookmark(Bookmark);
end;
end;
procedure TfrmYMTRKList.Button1Click(Sender: TObject);
var
Num, i: Integer;
2025-08-12 16:22:08 +08:00
MaxNo, MMXID, SPID: string;
2025-08-08 17:35:13 +08:00
begin
Num := StrToInt(Trim(AddNum.Text));
2025-08-12 16:22:08 +08:00
SPID := Trim(CDS_Main.fieldbyname('SPID').AsString);
try
ADOQueryCmd.Connection.BeginTrans;
for i := 1 to Num do
2025-08-08 17:35:13 +08:00
begin
2025-08-12 16:22:08 +08:00
if GetLSNo(ADOQueryTemp, MaxNo, 'MCM', 'YMT_CK_MX', 3, 1) = False then
begin
Application.MessageBox(<><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
Exit;
end;
MMXID := Trim(MaxNo);
with ADOQueryCmd do
begin
Close;
SQL.Clear;
sql.Add('insert into YMT_CK_MX (MXID,SPID,MXQty)');
sql.Add('values(' + quotedstr(MMXID));
sql.Add(',' + quotedstr(Trim(SPID)));
sql.Add(',0');
sql.Add(')');
ExecSQL;
end;
2025-08-08 17:35:13 +08:00
end;
2025-08-12 16:22:08 +08:00
ADOQueryCmd.Connection.CommitTrans;
InitMXGrid(SPID);
except
ADOQueryCmd.Connection.RollbackTrans;
Application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD><CAA7>!', '<27><>ʾ', 0);
2025-08-08 17:35:13 +08:00
end;
end;
2025-09-20 10:39:47 +08:00
procedure TfrmYMTRKList.TbEditKWClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
exit;
Panel4.Visible := True;
end;
procedure TfrmYMTRKList.KuWeiPropertiesButtonClick(Sender: TObject; AButtonIndex: Integer);
begin
try
2025-09-26 16:19:47 +08:00
frmZDYHelp := TfrmZDYHelp.Create(Application);
with frmZDYHelp do
2025-09-20 10:39:47 +08:00
begin
2025-09-26 16:19:47 +08:00
flag := 'KuWei';
flagname := '<27><>λ';
2025-09-20 10:39:47 +08:00
if ShowModal = 1 then
begin
with Self.CDS_Main do
begin
Edit;
2025-09-26 16:19:47 +08:00
KuWei.Text := Trim(frmZDYHelp.ClientDataSet1.fieldbyname('ZdyName').AsString);
2025-09-20 10:39:47 +08:00
end;
end;
end;
finally
2025-09-26 16:19:47 +08:00
frmZDYHelp.Free;
2025-09-20 10:39:47 +08:00
end;
end;
procedure TfrmYMTRKList.btnChkClick(Sender: TObject);
begin
if CDS_Main.IsEmpty then
exit;
if CDS_Main.Locate('SSel', True, []) = False then
begin
application.MessageBox('<27><>ѡ<EFBFBD><D1A1><EFBFBD><EFBFBD><EFBFBD>ݣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
exit;
end;
try
while CDS_Main.Locate('SSel', True, []) do
begin
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update YMT_CK_CR SET KuWei=' + quotedstr(trim(KuWei.Text)));
sql.Add('where SPID=' + quotedstr(trim(CDS_Main.fieldbyname('SPID').AsString)));
execsql;
end;
with CDS_Main do
begin
Edit;
FieldByName('SSel').Value := False;
FieldByName('KuWei').Value := trim(KuWei.Text);
Post;
end;
end;
Panel4.Visible := False;
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>޸ijɹ<C4B3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>޸<EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmYMTRKList.btn1Click(Sender: TObject);
begin
Panel4.Visible := False;
end;
2025-07-26 10:46:46 +08:00
end.