|
|
unit u_op_seai_fuhui;
|
|
|
|
|
|
interface
|
|
|
|
|
|
uses
|
|
|
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
|
|
|
Dialogs, Mask, wwdbedit, Wwdotdot, Wwdbcomb, wwdblook, RxLookup,
|
|
|
wwdbdatetimepicker, StdCtrls, bsSkinCtrls, ExtCtrls, DB, ADODB, dxExEdtr,
|
|
|
dxDBTLCl, dxGrClms, dxDBGrid, dxTL, dxDBCtrl, dxCntner, Menus, XPMenu;
|
|
|
|
|
|
type
|
|
|
Tfrm_op_seai_fuhui = class(TForm)
|
|
|
Panel2: TPanel;
|
|
|
Panel3: TPanel;
|
|
|
bsSkinButton10: TbsSkinButton;
|
|
|
bsSkinButton6: TbsSkinButton;
|
|
|
bsSkinButton9: TbsSkinButton;
|
|
|
bsSkinButton5: TbsSkinButton;
|
|
|
bsSkinPanel1: TbsSkinPanel;
|
|
|
Label6: TLabel;
|
|
|
Label3: TLabel;
|
|
|
Label1: TLabel;
|
|
|
Label2: TLabel;
|
|
|
Label10: TLabel;
|
|
|
Label5: TLabel;
|
|
|
Label9: TLabel;
|
|
|
Label8: TLabel;
|
|
|
Label11: TLabel;
|
|
|
Label30: TLabel;
|
|
|
Label125: TLabel;
|
|
|
Label124: TLabel;
|
|
|
Edit1: TEdit;
|
|
|
Edit4: TEdit;
|
|
|
Edit2: TEdit;
|
|
|
Edit3: TEdit;
|
|
|
wwDBDateTimePicker1: TwwDBDateTimePicker;
|
|
|
wwDBDateTimePicker2: TwwDBDateTimePicker;
|
|
|
RxDBLookupCombo2: TRxDBLookupCombo;
|
|
|
wwDBDateTimePicker3: TwwDBDateTimePicker;
|
|
|
wwDBDateTimePicker4: TwwDBDateTimePicker;
|
|
|
Edit7: TEdit;
|
|
|
wwDBLookupCombo49: TwwDBLookupCombo;
|
|
|
wwDBLookupCombo52: TwwDBLookupCombo;
|
|
|
t_op_seai: TADOQuery;
|
|
|
t_op_seai1: TDataSource;
|
|
|
dxDBGrid1: TdxDBGrid;
|
|
|
dxDBGrid1Column1: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column2: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column3: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column4: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column5: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column6: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column7: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column8: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column78: TdxDBGridColumn;
|
|
|
dxDBGrid1Column9: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column10: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column11: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column12: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column13: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column14: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column15: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column16: TdxDBGridDateColumn;
|
|
|
dxDBGrid1Column19: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column20: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column22: TdxDBGridDateColumn;
|
|
|
dxDBGrid1Column32: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column35: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column36: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column37: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column38: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column39: TdxDBGridColumn;
|
|
|
dxDBGrid1Column40: TdxDBGridColumn;
|
|
|
dxDBGrid11: TdxDBGridMaskColumn;
|
|
|
dxDBGrid12: TdxDBGridMaskColumn;
|
|
|
dxDBGrid13: TdxDBGridMaskColumn;
|
|
|
dxDBGrid14: TdxDBGridMaskColumn;
|
|
|
dxDBGrid15: TdxDBGridMaskColumn;
|
|
|
dxDBGrid16: TdxDBGridMaskColumn;
|
|
|
dxDBGrid17: TdxDBGridMaskColumn;
|
|
|
dxDBGrid18: TdxDBGridMaskColumn;
|
|
|
dxDBGrid19: TdxDBGridMaskColumn;
|
|
|
dxDBGrid110: TdxDBGridMaskColumn;
|
|
|
dxDBGrid111: TdxDBGridMaskColumn;
|
|
|
dxDBGrid112: TdxDBGridMaskColumn;
|
|
|
dxDBGrid113: TdxDBGridMaskColumn;
|
|
|
dxDBGrid114: TdxDBGridMaskColumn;
|
|
|
dxDBGrid115: TdxDBGridMaskColumn;
|
|
|
dxDBGrid116: TdxDBGridMaskColumn;
|
|
|
dxDBGrid117: TdxDBGridMaskColumn;
|
|
|
dxDBGrid118: TdxDBGridMaskColumn;
|
|
|
dxDBGrid119: TdxDBGridMaskColumn;
|
|
|
dxDBGrid120: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column61: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1TEU: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column63: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column64: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column65: TdxDBGridDateColumn;
|
|
|
dxDBGrid1Column66: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column67: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column72: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column68: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column69: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column70: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column74: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column75: TdxDBGridMaskColumn;
|
|
|
dxDBGrid1Column73: TdxDBGridColumn;
|
|
|
dxDBGrid1Column76: TdxDBGridColumn;
|
|
|
dxDBGrid1Column79: TdxDBGridColumn;
|
|
|
dxDBGrid1Column80: TdxDBGridColumn;
|
|
|
dxDBGrid1Column81: TdxDBGridColumn;
|
|
|
PopupMenu2: TPopupMenu;
|
|
|
N10: TMenuItem;
|
|
|
N11: TMenuItem;
|
|
|
N14: TMenuItem;
|
|
|
N13: TMenuItem;
|
|
|
N12: TMenuItem;
|
|
|
N15: TMenuItem;
|
|
|
N16: TMenuItem;
|
|
|
XPMenu1: TXPMenu;
|
|
|
Label13: TLabel;
|
|
|
wwDBComboBox2: TwwDBComboBox;
|
|
|
Label14: TLabel;
|
|
|
wwDBDateTimePicker7: TwwDBDateTimePicker;
|
|
|
Label15: TLabel;
|
|
|
wwDBDateTimePicker8: TwwDBDateTimePicker;
|
|
|
Label16: TLabel;
|
|
|
Edit5: TEdit;
|
|
|
ListBoxNos: TListBox;
|
|
|
dxDBGrid1Column89: TdxDBGridColumn;
|
|
|
bsSkinButton2: TbsSkinButton;
|
|
|
bsSkinButton3: TbsSkinButton;
|
|
|
dxDBGrid1Column90: TdxDBGridCheckColumn;
|
|
|
dxDBGrid1Column91: TdxDBGridColumn;
|
|
|
dxDBGrid1Column71: TdxDBGridColumn;
|
|
|
dxDBGrid1Column77: TdxDBGridColumn;
|
|
|
procedure FormClose(Sender: TObject; var Action: TCloseAction);
|
|
|
procedure bsSkinButton5Click(Sender: TObject);
|
|
|
procedure bsSkinButton10Click(Sender: TObject);
|
|
|
procedure bsSkinButton6Click(Sender: TObject);
|
|
|
procedure dxDBGrid1ColumnSorting(Sender: TObject;
|
|
|
Column: TdxDBTreeListColumn; var Allow: Boolean);
|
|
|
procedure N10Click(Sender: TObject);
|
|
|
procedure N14Click(Sender: TObject);
|
|
|
procedure N12Click(Sender: TObject);
|
|
|
procedure N16Click(Sender: TObject);
|
|
|
procedure FormShow(Sender: TObject);
|
|
|
procedure bsSkinButton9Click(Sender: TObject);
|
|
|
procedure Edit1KeyPress(Sender: TObject; var Key: Char);
|
|
|
procedure Edit5Enter(Sender: TObject);
|
|
|
procedure Edit5Exit(Sender: TObject);
|
|
|
procedure Edit5KeyPress(Sender: TObject; var Key: Char);
|
|
|
procedure bsSkinButton2Click(Sender: TObject);
|
|
|
procedure bsSkinButton3Click(Sender: TObject);
|
|
|
private
|
|
|
FHblNo:TStrings;
|
|
|
{ Private declarations }
|
|
|
public
|
|
|
{ Public declarations }
|
|
|
end;
|
|
|
|
|
|
var
|
|
|
frm_op_seai_fuhui: Tfrm_op_seai_fuhui;
|
|
|
|
|
|
implementation
|
|
|
|
|
|
uses u_main, my_sys_function, my_sys_chat;
|
|
|
|
|
|
{$R *.dfm}
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.FormClose(Sender: TObject;
|
|
|
var Action: TCloseAction);
|
|
|
begin
|
|
|
FreeAndNil(FHblNo);
|
|
|
savereggrid(dxdbgrid1,caption);
|
|
|
frm_op_seai_fuhui.Hide;
|
|
|
frm_op_seai_fuhui.ManualFloat(frm_op_seai_fuhui.BoundsRect );
|
|
|
frm_main.freeTabs('frm_op_seai_fuhui');
|
|
|
action:=cafree;
|
|
|
frm_op_seai_fuhui:=nil;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton5Click(Sender: TObject);
|
|
|
begin
|
|
|
close;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton10Click(Sender: TObject);
|
|
|
var
|
|
|
str,S3:widestring;
|
|
|
i:integer;
|
|
|
begin
|
|
|
if (wwDBDateTimePicker7.text<>'')or(wwDBDateTimePicker8.text<>'') then
|
|
|
begin
|
|
|
str:='where <20>Ƿ<C7B7>=1';
|
|
|
if wwDBDateTimePicker7.text<>'' then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>='+''''+wwDBDateTimePicker7.text+'''';
|
|
|
if wwDBDateTimePicker8.text<>'' then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><='+''''+wwDBDateTimePicker8.text+'''';
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if wwDBComboBox2.text='' then
|
|
|
str:='where 1=1';
|
|
|
if wwDBComboBox2.text='û<>и<EFBFBD><D0B8><EFBFBD>' then
|
|
|
str:='where <20>Ƿ<C7B7>=0';
|
|
|
if wwDBComboBox2.text='<27>Ѿ<EFBFBD><D1BE><EFBFBD><EFBFBD><EFBFBD>' then
|
|
|
str:='where <20>Ƿ<C7B7>=1';
|
|
|
end;
|
|
|
|
|
|
|
|
|
if Edit1.text<>''then
|
|
|
str:=str+' and ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> like '+''''+'%'+Edit1.text+'%'+'''';
|
|
|
if Edit4.text<>''then
|
|
|
str:=str+' and ί<>б<EFBFBD><D0B1><EFBFBD> like '+''''+'%'+Edit4.text+'%'+'''';
|
|
|
if Edit2.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD>ᵥ<EFBFBD><E1B5A5> like '+''''+'%'+Edit2.text+'%'+'''';
|
|
|
if Edit3.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD>ᵥ<EFBFBD><E1B5A5> like '+''''+'%'+Edit3.text+'%'+'''';
|
|
|
if wwDBDateTimePicker1.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>>='+''''+wwDBDateTimePicker1.text+'''';
|
|
|
if wwDBDateTimePicker2.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><='+''''+wwDBDateTimePicker2.text+'''';
|
|
|
if wwDBDateTimePicker3.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD>>='+''''+wwDBDateTimePicker3.text+'''';
|
|
|
if wwDBDateTimePicker4.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD><EFBFBD>ڼ<EFBFBD><='+''''+wwDBDateTimePicker4.text+'''';
|
|
|
if RxDBLookupCombo2.DisplayValues[1]<>''then
|
|
|
str:=str+' and ί<>е<EFBFBD>λ='+''''+RxDBLookupCombo2.DisplayValues[1]+'''';
|
|
|
// if RxDBLookupCombo6.DisplayValues[0]<>''then
|
|
|
// str:=str+' and <20><><EFBFBD><EFBFBD>Ա='+''''+RxDBLookupCombo6.DisplayValues[0]+'''';
|
|
|
if wwDBLookupCombo49.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD> like '+''''+'%'+wwDBLookupCombo49.text+'%'+'''';
|
|
|
if Edit7.text<>''then
|
|
|
str:=str+' and <20><><EFBFBD><EFBFBD> like '+''''+'%'+Edit7.text+'%'+'''';
|
|
|
if wwDBLookupCombo52.text<>''then
|
|
|
str:=str+' and ж<><D0B6><EFBFBD><EFBFBD> like '+''''+'%'+wwDBLookupCombo52.text+'%'+'''';
|
|
|
|
|
|
if FHblNo.Count<>0 then begin
|
|
|
str:=str+' and (';
|
|
|
for i:=0 to FHblNo.Count-1 do begin
|
|
|
if i=0 then
|
|
|
str:=str+'<27><><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>='+''''+Trim(FHblNo.Strings[i])+''''
|
|
|
else
|
|
|
str:=str+' or <20><><EFBFBD>ص<EFBFBD><D8B5><EFBFBD>='+''''+Trim(FHblNo.Strings[i])+'''';
|
|
|
end;
|
|
|
str:=str+') ';
|
|
|
end;
|
|
|
|
|
|
|
|
|
t_op_seai.close;
|
|
|
t_op_seai.sql.clear;
|
|
|
t_op_seai.sql.add('select * from t_op_seai '+str+default_sort(54,'t_op_seai','','desc'));
|
|
|
t_op_seai.open;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton6Click(Sender: TObject);
|
|
|
begin
|
|
|
Edit1.text:='';
|
|
|
Edit4.text:='';
|
|
|
Edit2.text:='';
|
|
|
Edit3.text:='';
|
|
|
wwDBDateTimePicker1.text:='';
|
|
|
wwDBDateTimePicker2.text:='';
|
|
|
RxDBLookupCombo2.ClearValue;
|
|
|
wwDBDateTimePicker3.text:='';
|
|
|
wwDBDateTimePicker4.text:='';
|
|
|
wwDBLookupCombo49.text:='';
|
|
|
Edit7.text:='';
|
|
|
wwDBLookupCombo52.text:='';
|
|
|
// RxDBLookupCombo6.ClearValue;
|
|
|
// wwDBComboBox1.text:='';
|
|
|
// wwDBDateTimePicker5.text:='';
|
|
|
//wwDBDateTimePicker6.text:='';
|
|
|
FHblNo.Clear;
|
|
|
wwDBComboBox2.text:='';
|
|
|
wwDBDateTimePicker7.text:='';
|
|
|
wwDBDateTimePicker8.text:='';
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.dxDBGrid1ColumnSorting(Sender: TObject;
|
|
|
Column: TdxDBTreeListColumn; var Allow: Boolean);
|
|
|
begin
|
|
|
Column_sort(Column,t_op_seai,'ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>');
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.N10Click(Sender: TObject);
|
|
|
begin
|
|
|
update_grid_view_no(dxdbgrid1);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.N14Click(Sender: TObject);
|
|
|
begin
|
|
|
update_grid_view_all(dxdbgrid1);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.N12Click(Sender: TObject);
|
|
|
begin
|
|
|
// update_grid(dxdbgrid1,98);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.N16Click(Sender: TObject);
|
|
|
begin
|
|
|
grid_save_xls(dxdbgrid1);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.FormShow(Sender: TObject);
|
|
|
begin
|
|
|
loadreggrid(dxdbgrid1,true,caption);
|
|
|
FHblNo:=TStringList.Create;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton9Click(Sender: TObject);
|
|
|
begin
|
|
|
sys_print('<27><><EFBFBD>˽<EFBFBD><CBBD>ڸ<EFBFBD><DAB8><EFBFBD>',2,nil,nil,nil,nil,t_op_seai1,nil,nil,nil,nil,nil,nil);
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.Edit1KeyPress(Sender: TObject;
|
|
|
var Key: Char);
|
|
|
begin
|
|
|
if key=#13 then
|
|
|
begin
|
|
|
key:=#0;
|
|
|
frm_op_seai_fuhui.bsSkinButton10Click(Sender);
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.Edit5Enter(Sender: TObject);
|
|
|
begin
|
|
|
ListBoxNos.Items.Clear;
|
|
|
ListBoxNos.Items.Assign(FHblNo);
|
|
|
ListBoxNos.Visible:=true;
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.Edit5Exit(Sender: TObject);
|
|
|
begin
|
|
|
ListBoxNos.Visible:=false;
|
|
|
ListBoxNos.Items.Clear;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.Edit5KeyPress(Sender: TObject;
|
|
|
var Key: Char);
|
|
|
begin
|
|
|
if Key<>#13 then exit;
|
|
|
if (Trim(Edit5.Text)<>'') then begin
|
|
|
FHblNo.Add(Trim(Edit5.Text));
|
|
|
ListBoxNos.Items.Add(Trim(Edit5.Text));
|
|
|
Edit5.Text:='';
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton2Click(Sender: TObject);
|
|
|
var
|
|
|
i:integer;
|
|
|
begin
|
|
|
if t_op_seai.isempty then
|
|
|
exit;
|
|
|
if dxDBGrid1.SelectedCount>=1 then
|
|
|
begin
|
|
|
for i:=0 to dxDBGrid1.SelectedCount-1 do
|
|
|
begin
|
|
|
t_op_seai.GotoBookmark(pointer(dxDBGrid1.selectedrows[i]));
|
|
|
if not t_op_seai.FieldByName('<27>Ƿ<C7B7>').asboolean then begin
|
|
|
t_op_seai.Edit;
|
|
|
t_op_seai['<27>Ƿ<C7B7>']:=1;
|
|
|
t_op_seai['<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>']:=date;
|
|
|
t_op_seai.post;
|
|
|
end;
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if not t_op_seai.FieldByName('<27>Ƿ<EFBFBD><C7B7><EFBFBD><EFBFBD><EFBFBD>').asboolean then begin
|
|
|
t_op_seai.Edit;
|
|
|
t_op_seai['<27>Ƿ<C7B7>']:=1;
|
|
|
t_op_seai['<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>']:=date;
|
|
|
t_op_seai.post;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
procedure Tfrm_op_seai_fuhui.bsSkinButton3Click(Sender: TObject);
|
|
|
var
|
|
|
i:integer;
|
|
|
begin
|
|
|
if t_op_seai.isempty then
|
|
|
exit;
|
|
|
if dxDBGrid1.SelectedCount>=1 then
|
|
|
begin
|
|
|
for i:=0 to dxDBGrid1.SelectedCount-1 do
|
|
|
begin
|
|
|
t_op_seai.GotoBookmark(pointer(dxDBGrid1.selectedrows[i]));
|
|
|
if t_op_seai.FieldByName('<27>Ƿ<C7B7>').asboolean then begin
|
|
|
t_op_seai.Edit;
|
|
|
t_op_seai['<27>Ƿ<C7B7>']:=0;
|
|
|
t_op_seai['<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>']:=null;
|
|
|
t_op_seai.post;
|
|
|
end;
|
|
|
end;
|
|
|
end
|
|
|
else
|
|
|
begin
|
|
|
if t_op_seai.FieldByName('<27>Ƿ<C7B7>').asboolean then begin
|
|
|
t_op_seai.Edit;
|
|
|
t_op_seai['<27>Ƿ<C7B7>']:=0;
|
|
|
t_op_seai['<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>']:=null;
|
|
|
t_op_seai.post;
|
|
|
end;
|
|
|
end;
|
|
|
|
|
|
end;
|
|
|
|
|
|
end.
|