D7gmYushang/发货申请(ShipmentRequest.dll)/U_DYSQList.pas
DESKTOP-E401PHE\Administrator 1d94a89439 0
2025-09-24 13:13:14 +08:00

651 lines
17 KiB
ObjectPascal
Raw 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_DYSQList;
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, cxPC, cxButtonEdit,
RM_E_llPDF, cxDropDownEdit, cxTextEdit, cxLookAndFeels, cxLookAndFeelPainters,
cxNavigator, dxBarBuiltInMenu;
type
TfrmDYSQList = class(TForm)
ToolBar1: TToolBar;
TBRafresh: TToolButton;
TBFind: TToolButton;
TBAdd: TToolButton;
TBEdit: TToolButton;
TBDel: TToolButton;
TBPrint: TToolButton;
TBClose: TToolButton;
Tv1: TcxGridDBTableView;
cxGrid1Level1: TcxGridLevel;
cxGrid1: TcxGrid;
cxGridPopupMenu1: TcxGridPopupMenu;
ADOQueryCmd: TADOQuery;
ADOQueryMain: TADOQuery;
ADOQueryTemp: TADOQuery;
DataSource1: TDataSource;
TBExport: TToolButton;
v1OrdDate: TcxGridDBColumn;
Order_Main: TClientDataSet;
RMDBDataSet1: TRMDBDataSet;
RMXLSExport1: TRMXLSExport;
v1CustomerNoName: TcxGridDBColumn;
ToolButton1: TToolButton;
ADOQueryPrint: TADOQuery;
CDS_Print: TClientDataSet;
v1Column4: TcxGridDBColumn;
Panel1: TPanel;
Label1: TLabel;
Label4: TLabel;
Label8: TLabel;
Label9: TLabel;
Label12: TLabel;
Label13: TLabel;
BegDate: TDateTimePicker;
EndDate: TDateTimePicker;
CustomerNoName: TEdit;
MPRTCodeName: TEdit;
HZSCConNo: TEdit;
MPRTKZ: TEdit;
MPRTMF: TEdit;
cxTabControl1: TcxTabControl;
tchk: TToolButton;
Tnochk: TToolButton;
cxSplitter1: TcxSplitter;
ADOQuerySub: TADOQuery;
DataSource2: TDataSource;
v1Column8: TcxGridDBColumn;
Label2: TLabel;
//RMllPDFExport1: TRMllPDFExport;
cxGrid2: TcxGrid;
Tv2: TcxGridDBTableView;
cxGridLevel1: TcxGridLevel;
ClientDataSet2: TClientDataSet;
cxGridPopupMenu2: TcxGridPopupMenu;
CDS_Note: TClientDataSet;
RM1: TRMGridReport;
v1Column13: TcxGridDBColumn;
v1Column17: TcxGridDBColumn;
v1Column18: TcxGridDBColumn;
v1Column19: TcxGridDBColumn;
v2Column1: TcxGridDBColumn;
v2Column3: TcxGridDBColumn;
v1Column1: TcxGridDBColumn;
v1Column7: TcxGridDBColumn;
v1Column10: TcxGridDBColumn;
v1Column26: TcxGridDBColumn;
v1Column27: TcxGridDBColumn;
v1Column2: TcxGridDBColumn;
cv2Column4: TcxGridDBColumn;
cv2Column6: TcxGridDBColumn;
cv1Column12: TcxGridDBColumn;
cv2Column12: TcxGridDBColumn;
cv1Column14: TcxGridDBColumn;
v2Column2: TcxGridDBColumn;
v2Column4: TcxGridDBColumn;
Tv2Column1: TcxGridDBColumn;
Tv2Column2: TcxGridDBColumn;
Label3: TLabel;
FSID: TEdit;
Label5: TLabel;
HZCODE: TEdit;
//RMllPDFExport1: TRMllPDFExport;
procedure FormDestroy(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure FormCreate(Sender: TObject);
procedure TBCloseClick(Sender: TObject);
procedure TBFindClick(Sender: TObject);
procedure TBEditClick(Sender: TObject);
procedure TBDelClick(Sender: TObject);
procedure TBExportClick(Sender: TObject);
procedure TBPrintClick(Sender: TObject);
procedure TBRafreshClick(Sender: TObject);
procedure TBAddClick(Sender: TObject);
procedure FormShow(Sender: TObject);
procedure CheckBox1Click(Sender: TObject);
procedure CheckBox2Click(Sender: TObject);
procedure ToolButton1Click(Sender: TObject);
procedure CustomerNoNameChange(Sender: TObject);
procedure tchkClick(Sender: TObject);
procedure TnochkClick(Sender: TObject);
procedure cxTabControl1Change(Sender: TObject);
procedure Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
procedure Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
private
procedure InitGrid();
procedure InitSubGrid();
procedure InitForm();
procedure SetStatus();
function DelData(): Boolean;
{ Private declarations }
public
FFInt: Integer;
canshu1, canshu2: string;
{ Public declarations }
end;
//var
//frmContractListNX: TfrmContractListNX;
implementation
uses
U_DataLink, U_DYSQInPut, U_Fun, U_ZDYHelp;
{$R *.dfm}
procedure TfrmDYSQList.SetStatus();
begin
tchk.Visible := False;
Tnochk.Visible := False;
if canshu1 = '<27><><EFBFBD><EFBFBD>' then
begin
case cxTabControl1.TabIndex of
0:
begin
tchk.Visible := true;
end;
1:
begin
Tnochk.Visible := true;
end;
2:
begin
end;
end;
end
else if canshu1 = '<27><>Ȩ<EFBFBD><C8A8>' then
begin
case cxTabControl1.TabIndex of
0:
begin
tchk.Visible := true;
end;
1:
begin
Tnochk.Visible := true;
end;
2:
begin
end;
end;
end
else
begin
end;
end;
procedure TfrmDYSQList.FormDestroy(Sender: TObject);
begin
//frmFHSQList:=nil;
end;
procedure TfrmDYSQList.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action := caFree;
end;
procedure TfrmDYSQList.FormCreate(Sender: TObject);
begin
cxgrid1.Align := alClient;
end;
procedure TfrmDYSQList.TBCloseClick(Sender: TObject);
begin
Close;
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7');
WriteCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8');
end;
procedure TfrmDYSQList.InitGrid();
begin
try
ADOQueryMain.DisableControls;
with ADOQueryMain do
begin
Filtered := False;
Close;
sql.Clear;
Sql.Add(' select A.*,isnull(status,'<><CEB4><EFBFBD><EFBFBD>'')status2 ');
Sql.Add(' ,HZCODE=CAST((select distinct(SPrtCode) + '' '' from FHSQ_Sub X where A.FSID=X.FSID for xml path('''') ) AS VARCHAR(100))');
Sql.Add(' ,HZSCConNo= STUFF(( SELECT distinct '','' +convert(VARCHAR, SCConNo) FROM FHSQ_Sub X where A.FSID=X.FSID FOR XML PATH('''')), 1, 1, '''')');
sql.Add(' from FHSQ_Main A');
sql.Add(' where SQType=''<27><><EFBFBD><EFBFBD>'' ');
if cxTabControl1.TabIndex <> 0 then
begin
sql.Add(' and SQDate>=''' + Trim(FormatDateTime('yyyy-MM-dd', BegDate.Date)) + '''');
sql.Add(' and SQDate<''' + Trim(FormatDateTime('yyyy-MM-dd', EndDate.Date + 1)) + '''');
end;
if cxTabControl1.TabIndex = 0 then
begin
SQL.Add(' and isnull(A.Chker,'''')='''' ');
end
else if cxTabControl1.TabIndex = 1 then
begin
SQL.Add(' and isnull(A.Chker,'''')<>'''' ');
end;
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
sql.Add(' and isnull(A.Filler,'''')=''' + Trim(DName) + '''');
end;
if (canshu2 = '<27><><EFBFBD><EFBFBD>') or (canshu2 = '<27><><EFBFBD><EFBFBD>') then
begin
sql.Add(' and isnull(A.XSType,'''')=''' + Trim(canshu2) + '''');
end;
// ShowMessage(sql.Text);
Open;
end;
SCreateCDS20(ADOQueryMain, Order_Main);
SInitCDSData20(ADOQueryMain, Order_Main);
finally
ADOQueryMain.EnableControls;
end;
end;
procedure TfrmDYSQList.InitForm();
begin
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>', Tv1, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>7');
ReadCxGrid('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ӱ<EFBFBD>', Tv2, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>8');
EndDate.DateTime := SGetServerDate10(ADOQueryTemp);
BegDate.DateTime := EndDate.DateTime - 60;
InitGrid();
end;
procedure TfrmDYSQList.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 TfrmDYSQList.TBEditClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if cxTabControl1.TabIndex <> 0 then
Exit;
if Trim(canshu1) <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('YSID').AsString) <> '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF><EEB2BB><EFBFBD>޸<EFBFBD><DEB8><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
frmDYSQInPut := TfrmDYSQInPut.Create(Application);
with frmDYSQInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('FSID').AsString);
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmDYSQInPut.Free;
end;
end;
procedure TfrmDYSQList.TBDelClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
if cxTabControl1.TabIndex <> 0 then
Exit;
if canshu1 <> '<27><>Ȩ<EFBFBD><C8A8>' then
begin
if Trim(Order_Main.fieldbyname('Filler').AsString) <> Trim(DName) then
begin
Application.MessageBox('<27><><EFBFBD>ܲ<EFBFBD><DCB2><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˵<EFBFBD><CBB5><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
end;
with ADOQueryTemp do
begin
Close;
sql.Clear;
sql.Add(' select * from CK_BanCP_CR where CRFlag=''<27><><EFBFBD><EFBFBD>''');
sql.add(' and CKOrdNo=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
Open;
end;
if ADOQueryTemp.IsEmpty = False then
begin
Application.MessageBox('<27>ѷ<EFBFBD><D1B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ɾ<EFBFBD><C9BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>!', '<27><>ʾ', 0);
exit;
end;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from yf_money_cr_sub');
sql.Add('where yfpzno=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if ADOQueryTemp.IsEmpty = false then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF><EEB2BB>ɾ<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;
if DelData() then
begin
Order_Main.Delete;
InitSubGrid();
end;
end;
function TfrmDYSQList.DelData(): Boolean;
begin
try
Result := false;
ADOQueryCmd.Connection.BeginTrans;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Sub where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
with ADOQueryCmd do
begin
Close;
sql.Clear;
sql.Add('delete FHSQ_Main where FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
ExecSQL;
end;
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 TfrmDYSQList.TBExportClick(Sender: TObject);
begin
if ADOQueryMain.IsEmpty then
Exit;
SelExportData(Tv1, ADOQueryMain, '<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>б<EFBFBD>');
end;
procedure TfrmDYSQList.TBPrintClick(Sender: TObject);
var
fPrintFile: string;
Txt, fImagePath: string;
Moudle: THandle;
Makebar: TMakebar;
Mixtext: TMixtext;
begin
if Order_Main.IsEmpty then
Exit;
ExportFtErpFile('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뵥.rmf', ADOQueryTemp);
fPrintFile := ExtractFilePath(Application.ExeName) + 'Report\<5C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>뵥.rmf';
with ADOQueryPrint do
begin
Close;
sql.Clear;
SQL.Add('select *,b.ganghao as gangno from fhsq_main A inner join fhsq_sub B ON A.FSID=B.FSID');
SQL.Add('WHERE A.FSID=' + quotedstr(Trim(Order_Main.fieldbyname('FSID').AsString)));
// SQL.Add('EXEC P_Print_XHSQD @FSID=' + quotedstr(Trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if FileExists(fPrintFile) then
begin
try
Moudle := LoadLibrary('MakeQRBarcode.dll');
@Makebar := GetProcAddress(Moudle, 'Make');
@Mixtext := GetProcAddress(Moudle, 'MixText');
Txt := Trim(Order_Main.fieldbyname('FSID').AsString);
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><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', MB_ICONERROR);
exit;
end;
RMVariables['QRBARCODE'] := fImagePath;
RM1.LoadFromFile(fPrintFile);
RM1.ShowReport;
end
else
begin
Application.MessageBox(PChar(<><C3BB><EFBFBD><EFBFBD>' + fPrintFile), '<27><>ʾ', 0);
end;
end;
procedure TfrmDYSQList.TBRafreshClick(Sender: TObject);
begin
InitGrid();
TBFind.Click;
InitSubGrid();
end;
procedure TfrmDYSQList.TBAddClick(Sender: TObject);
var
maxno: string;
begin
try
frmDYSQInPut := TfrmDYSQInPut.Create(Application);
with frmDYSQInPut do
begin
PState := 0;
FMainId := '';
if ShowModal = 1 then
begin
InitGrid();
end;
end;
finally
frmDYSQInPut.Free;
end;
end;
procedure TfrmDYSQList.FormShow(Sender: TObject);
begin
InitForm();
SetStatus();
end;
procedure TfrmDYSQList.CheckBox1Click(Sender: TObject);
begin
InitGrid();
end;
procedure TfrmDYSQList.CheckBox2Click(Sender: TObject);
begin
TBRafresh.Click;
end;
procedure TfrmDYSQList.ToolButton1Click(Sender: TObject);
begin
if Order_Main.IsEmpty then
Exit;
try
frmDYSQInPut := TfrmDYSQInPut.Create(Application);
with frmDYSQInPut do
begin
PState := 1;
FMainId := Trim(Self.Order_Main.fieldbyname('FSID').AsString);
ToolBar2.Visible := False;
TBSave.Visible := False;
ScrollBox1.Enabled := False;
Tv1.OptionsSelection.CellSelect := False;
if ShowModal = 1 then
begin
end;
end;
finally
frmDYSQInPut.Free;
end;
end;
procedure TfrmDYSQList.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 TfrmDYSQList.tchkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if cxTabControl1.TabIndex <> 0 then
exit;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main SET Chker=''' + Trim(DName) + ''',ChkTime=getdate(),ChkStatus=''<27><><EFBFBD><EFBFBD>ͨ<EFBFBD><CDA8>'' ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
Order_Main.Delete;
InitSubGrid();
application.MessageBox('<27><><EFBFBD>˳ɹ<CBB3><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmDYSQList.InitSubGrid();
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
sql.Add('select A.*,B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''')
else
sql.Add('select A.*,B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId where 1=2');
// ShowMessage(SQL.Text);
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmDYSQList.TnochkClick(Sender: TObject);
begin
if Order_Main.IsEmpty then
exit;
if cxTabControl1.TabIndex <> 1 then
exit;
with ADOQueryTemp do
begin
close;
sql.Clear;
sql.Add('select * from FHSQ_Main');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
Open;
end;
if Trim(ADOQueryTemp.fieldbyname('YSID').AsString) <> '' then
begin
Application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ӧ<EFBFBD><D3A6><EFBFBD>˿<CBBF>ܳ<EFBFBD><DCB3><EFBFBD>!', '<27><>ʾ', 0);
Exit;
end;
try
with ADOQueryCmd do
begin
close;
sql.Clear;
sql.Add('update FHSQ_Main SET Chker=Null,ChkTime=Null,ChkStatus=Null ');
sql.Add('where FSID=' + quotedstr(trim(Order_Main.fieldbyname('FSID').AsString)));
execsql;
end;
Order_Main.Delete;
InitSubGrid();
application.MessageBox('<27><><EFBFBD><EFBFBD><EFBFBD>ɹ<EFBFBD><C9B9><EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ');
except
application.MessageBox('<27><><EFBFBD><EFBFBD>ʧ<EFBFBD>ܣ<EFBFBD>', '<27><>ʾ<EFBFBD><CABE>Ϣ', 0);
end;
end;
procedure TfrmDYSQList.cxTabControl1Change(Sender: TObject);
begin
TBRafresh.Click;
SetStatus();
end;
procedure TfrmDYSQList.Tv1MouseDown(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer);
begin
with ADOQueryTemp do
begin
Close;
sql.Clear;
if Order_Main.IsEmpty = False then
begin
sql.Add('select A.*, B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId ');
// sql.Add(' inner join CLoth_Sub B on A.SubId=B.SubId');
// sql.Add(' inner join CLoth_Main C on B.MainId=C.MainId');
sql.Add(' where A.FSId=''' + Trim(Order_Main.fieldbyname('FSId').AsString) + '''');
end
else
begin
sql.Add('select A.*, B.ORDERNO from FHSQ_Sub A LEFT JOIN JYOrder_Main B ON A.MainId=B.MainId ');
sql.Add(' where 1=2');
end;
Open;
end;
SCreateCDS20(ADOQueryTemp, ClientDataSet2);
SInitCDSData20(ADOQueryTemp, ClientDataSet2);
end;
procedure TfrmDYSQList.Tv1CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean);
begin
if AViewInfo.GridRecord.Values[cv1Column12.Index] <> <><CEB4><EFBFBD><EFBFBD>' then
ACanvas.font.Color := clred;
end;
end.