Читайте также:
|
|
unit Main_form;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, XPStyleActnCtrls, ActnList, ActnMan,
ActnColorMaps, ComCtrls, StdCtrls, ExtCtrls, Grids, DBGrids, Mask, Menus,
CustomizeDlg, DBCtrls,org_unit,OleServer, WordXP,dateutils,ShellApi;
type
TFirst_form = class(TForm)
Kadr_connection: TADOConnection;
XPColorMap1: TXPColorMap;
ActionManager1: TActionManager;
GroupBox1: TGroupBox;
PageControl1: TPageControl;
TabSheet1: TTabSheet;
Find_personal_table: TADOQuery;
Find_personal_src: TDataSource;
Panel1: TPanel;
Label1: TLabel;
Family_name: TEdit;
Label6: TLabel;
Label2: TLabel;
First_name: TEdit;
Button2: TButton;
Pers_result: TDBGrid;
Find_personal_tableDSDesigner: TAutoIncField;
Find_personal_tableDSDesigner2: TIntegerField;
Find_personal_tableDSDesigner3: TWideStringField;
Find_personal_tableDSDesigner4: TWideStringField;
Find_personal_tableDSDesigner5: TWideStringField;
Find_personal_tableDSDesigner6: TWideStringField;
Find_personal_tableDSDesigner7: TWideStringField;
Find_personal_tableDSDesigner8: TWideStringField;
Dolg: TEdit;
GroupBox2: TGroupBox;
MainMenu1: TMainMenu;
N1: TMenuItem;
N2: TMenuItem;
Personal_table: TADOTable;
Personal_tableDSDesigner: TAutoIncField;
Personal_tableDSDesigner2: TIntegerField;
Personal_tableDSDesigner3: TWideStringField;
Personal_tableDSDesigner4: TWideStringField;
Personal_tableDSDesigner5: TWideStringField;
Personal_tableDSDesigner6: TWideStringField;
Personal_tableDSDesigner7: TWideStringField;
Personal_tableDSDesigner8: TWideStringField;
Personal_tableDSDesigner10: TWideStringField;
Personal_tableDSDesigner11: TWideStringField;
Personal_tableDSDesigner12: TWideStringField;
Personal_tableDSDesigner13: TWideStringField;
Personal_tableDSDesigner14: TWideStringField;
Personal_SRC: TDataSource;
Personal_tableDSDesigner9: TDateTimeField;
Label3: TLabel;
Label7: TLabel;
TN: TDBEdit;
Label10: TLabel;
Label11: TLabel;
Label12: TLabel;
WORK_CHARACTER: TDBComboBox;
DBNavigator1: TDBNavigator;
Label13: TLabel;
ALPHABIT: TDBEdit;
Label14: TLabel;
WORK_TYPE: TDBComboBox;
SEX: TDBComboBox;
Label15: TLabel;
N3: TMenuItem;
N4: TMenuItem;
PageControl2: TPageControl;
TabSheet2: TTabSheet;
Label16: TLabel;
FAMILY: TDBEdit;
Label17: TLabel;
F_NAME: TDBEdit;
Label18: TLabel;
L_NAME: TDBEdit;
TabSheet3: TTabSheet;
Personal_tableDSDesigner15: TDateTimeField;
Personal_tableDSDesigner16: TWideStringField;
Personal_tableDSDesigner17: TWideStringField;
Personal_tableDSDesigner1: TWideStringField;
Personal_tableDSDesigner22: TWideStringField;
Personal_tableDSDesigner18: TWideStringField;
Personal_tableDSDesigner23: TWideStringField;
Personal_tableDSDesigner19: TWideStringField;
Label19: TLabel;
DR: TDBEdit;
Label20: TLabel;
MR: TDBEdit;
Label21: TLabel;
GR: TDBComboBox;
L1: TDBEdit;
Label23: TLabel;
Label22: TLabel;
Label24: TLabel;
L1R: TDBComboBox;
L2: TDBEdit;
L2R: TDBComboBox;
TabSheet4: TTabSheet;
Label25: TLabel;
OBR: TDBComboBox;
Obraz_table: TADOTable;
Obraz_SRC: TDataSource;
Label26: TLabel;
DBGrid1: TDBGrid;
DBNavigator2: TDBNavigator;
Bevel1: TBevel;
Personal_tableDSDesigner20: TWideStringField;
Personal_tableDSDesigner21: TWideStringField;
Personal_tableDSDesigner24: TDateTimeField;
Personal_tableDSDesigner25: TWideStringField;
Label27: TLabel;
PS: TDBEdit;
Label28: TLabel;
PN: TDBEdit;
Label29: TLabel;
DV: TDBEdit;
Label30: TLabel;
KV: TDBEdit;
TabSheet5: TTabSheet;
Personal_tableDSDesigner110: TWideStringField;
Personal_tableDSDesigner26: TWideStringField;
Personal_tableDSDesigner111: TWideStringField;
Personal_tableDSDesigner27: TWideStringField;
Personal_tableDSDesigner28: TDateTimeField;
Personal_tableDSDesigner29: TWideStringField;
Personal_tableDSDesigner30: TWideStringField;
Personal_tableEmail: TWideStringField;
Personal_tableDSDesigner31: TMemoField;
Label31: TLabel;
Bevel2: TBevel;
Label32: TLabel;
I1: TDBEdit;
Label33: TLabel;
A1: TDBEdit;
Bevel3: TBevel;
Label34: TLabel;
Label35: TLabel;
I2: TDBEdit;
Label36: TLabel;
A2: TDBEdit;
Label37: TLabel;
Td: TDBEdit;
Label38: TLabel;
DBEdit6: TDBEdit;
Label39: TLabel;
DBEdit7: TDBEdit;
Label40: TLabel;
DBMemo1: TDBMemo;
Label41: TLabel;
Date_reg: TDBEdit;
Personal_tableDSDesigner32: TWideStringField;
Personal_tableDSDesigner33: TWideStringField;
Personal_tableDSDesigner34: TWideStringField;
Personal_tableDSDesigner35: TWideStringField;
Personal_tableDSDesigner36: TWideStringField;
Personal_tableDSDesigner37: TWideStringField;
Personal_tableDSDesigner38: TWideStringField;
Personal_tableDSDesigner39: TWideStringField;
Personal_tableDSDesigner40: TWideStringField;
TabSheet6: TTabSheet;
Label42: TLabel;
KZ: TDBEdit;
Label43: TLabel;
VZ: TDBComboBox;
Label44: TLabel;
Label45: TLabel;
VUS: TDBEdit;
Label46: TLabel;
Label47: TLabel;
NVK: TDBEdit;
Label48: TLabel;
Label49: TLabel;
SON: TDBEdit;
Label50: TLabel;
SS: TDBEdit;
Label51: TLabel;
OOS: TDBEdit;
Family_table: TADOTable;
Family_tableDSDesigner: TAutoIncField;
Family_tableDSDesigner2: TWideStringField;
Family_tableDSDesigner3: TWideStringField;
Family_tableDSDesigner4: TWideStringField;
Family_tableDSDesigner5: TWideStringField;
Family_tableDSDesigner6: TDateTimeField;
Family_tableLink_to: TIntegerField;
Family_SRC: TDataSource;
TabSheet7: TTabSheet;
Personal_tableDSDesigner41: TWideStringField;
SEM_POL: TDBComboBox;
Label52: TLabel;
Label53: TLabel;
DBGrid2: TDBGrid;
DBNavigator3: TDBNavigator;
Obraz_tableDSDesigner: TAutoIncField;
Obraz_tableLink_to: TIntegerField;
Obraz_tableDSDesigner2: TWideStringField;
Obraz_tableDSDesigner3: TWideStringField;
Obraz_tableDSDesigner4: TWideStringField;
Obraz_tableDSDesigner5: TWideStringField;
Obraz_tableDSDesigner6: TDateTimeField;
Obraz_tableDSDesigner7: TWideStringField;
Obraz_tableDSDesigner8: TWideStringField;
Obraz_tableDSDesigner9: TWideStringField;
Obraz_tableDSDesigner10: TWideStringField;
TabSheet8: TTabSheet;
Personal_tableDSDesigner42: TWideStringField;
Personal_tableDSDesigner43: TWideStringField;
Label54: TLabel;
PO: TDBEdit;
Label55: TLabel;
PD: TDBEdit;
TabSheet9: TTabSheet;
Priem_i_perevod: TADOTable;
Priem_i_perevod_SCR: TDataSource;
DBGrid3: TDBGrid;
DBNavigator4: TDBNavigator;
Priem_i_perevodDSDesigner: TAutoIncField;
Priem_i_perevodDSDesigner2: TDateTimeField;
Priem_i_perevodDSDesigner3: TWideStringField;
Priem_i_perevodDSDesigner4: TWideStringField;
Priem_i_perevodDSDesigner5: TWideStringField;
Priem_i_perevodDSDesigner6: TWideStringField;
Priem_i_perevodDSDesigner7: TWideStringField;
Priem_i_perevodDSDesigner8: TWideStringField;
Priem_i_perevodDSDesigner9: TWideStringField;
Priem_i_perevodDSDesigner10: TWideStringField;
Priem_i_perevodLink_to: TIntegerField;
Attest: TADOTable;
TabSheet10: TTabSheet;
Attest_SRC: TDataSource;
DBNavigator5: TDBNavigator;
DBGrid4: TDBGrid;
AttestDSDesigner: TAutoIncField;
AttestDSDesigner2: TDateTimeField;
AttestDSDesigner3: TWideStringField;
AttestDSDesigner4: TWideStringField;
AttestDSDesigner5: TWideStringField;
AttestDSDesigner6: TWideStringField;
AttestLink_to: TIntegerField;
pov_kv_table: TADOTable;
pov_kv_tableDSDesigner: TAutoIncField;
pov_kv_tableDSDesigner2: TDateTimeField;
pov_kv_tableDSDesigner3: TDateTimeField;
pov_kv_tableDSDesigner4: TWideStringField;
pov_kv_tableDSDesigner5: TWideStringField;
pov_kv_tableDSDesigner6: TWideStringField;
pov_kv_tableDSDesigner7: TWideStringField;
pov_kv_tableDSDesigner8: TDateTimeField;
pov_kv_tableDSDesigner9: TWideStringField;
pov_kv_tableLink_to: TIntegerField;
TabSheet11: TTabSheet;
pov_kv_SRC: TDataSource;
DBGrid5: TDBGrid;
DBNavigator6: TDBNavigator;
TabSheet12: TTabSheet;
prof_perepodg_table: TADOTable;
prof_perepodg_tableDSDesigner: TAutoIncField;
prof_perepodg_tableDSDesigner2: TDateTimeField;
prof_perepodg_tableDSDesigner3: TDateTimeField;
prof_perepodg_tableDSDesigner4: TWideStringField;
prof_perepodg_tableDSDesigner5: TWideStringField;
prof_perepodg_tableDSDesigner6: TWideStringField;
prof_perepodg_tableDSDesigner7: TDateTimeField;
prof_perepodg_tableDSDesigner8: TWideStringField;
prof_perepodg_tableLink_to: TIntegerField;
Prof_perepodg_SRC: TDataSource;
DBGrid6: TDBGrid;
DBNavigator7: TDBNavigator;
nagr_table: TADOTable;
Nagr_SRC: TDataSource;
nagr_tableDSDesigner: TAutoIncField;
nagr_tableDSDesigner2: TWideStringField;
nagr_tableDSDesigner3: TWideStringField;
nagr_tableDSDesigner4: TWideStringField;
nagr_tableDSDesigner5: TDateTimeField;
nagr_tableLink_to: TIntegerField;
TabSheet13: TTabSheet;
DBGrid7: TDBGrid;
DBNavigator8: TDBNavigator;
Otp_table: TADOTable;
Otp_tableDSDesigner: TAutoIncField;
Otp_tableDSDesigner2: TWideStringField;
Otp_tableDSDesigner3: TDateTimeField;
Otp_tableDSDesigner4: TDateTimeField;
Otp_tableDSDesigner5: TWideStringField;
Otp_tableDSDesigner6: TDateTimeField;
Otp_tableDSDesigner7: TDateTimeField;
Otp_tableDSDesigner8: TWideStringField;
Otp_tableLink_to: TIntegerField;
Otp_src: TDataSource;
TabSheet14: TTabSheet;
DBGrid8: TDBGrid;
DBNavigator9: TDBNavigator;
TabSheet15: TTabSheet;
Sl_table: TADOTable;
Sl_tableDSDesigner: TAutoIncField;
Sl_tableDSDesigner2: TWideStringField;
Sl_tableDSDesigner3: TWideStringField;
Sl_tableDSDesigner4: TDateTimeField;
Sl_tableDSDesigner5: TWideStringField;
Sl_tableLink_to: TIntegerField;
Sl_SRC: TDataSource;
DBGrid9: TDBGrid;
DBNavigator10: TDBNavigator;
SP: TDBComboBox;
KG: TDBComboBox;
Label56: TLabel;
DBComboBox1: TDBComboBox;
TabSheet16: TTabSheet;
Structure: TTreeView;
Otdels_table: TADOTable;
Otdels_tableDSDesigner: TAutoIncField;
Otdels_tableDSDesigner2: TWideStringField;
Otdels_tableDSDesigner3: TMemoField;
Bevel4: TBevel;
DateTimePicker1: TDateTimePicker;
DBEdit2: TDBEdit;
Personal_tableDSDesigner44: TWideStringField;
DBEdit3: TDBEdit;
DateTimePicker2: TDateTimePicker;
DBEdit4: TDBEdit;
DBEdit5: TDBEdit;
Button1: TButton;
DBEdit1: TDBEdit;
Label4: TLabel;
Personal_tableDSDesigner47: TWideStringField;
Personal_tableOD: TWideStringField;
Personal_tableOF: TWideStringField;
Personal_tablesrokOD: TIntegerField;
Personal_tablesrokOF: TIntegerField;
N5: TMenuItem;
procedure First_nameChange(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Family_nameChange(Sender: TObject);
procedure BirthdayChange(Sender: TObject);
procedure SnilsChange(Sender: TObject);
procedure DolgChange(Sender: TObject);
procedure INNChange(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure N4Click(Sender: TObject);
procedure Pers_resultCellClick(Column: TColumn);
procedure N2Click(Sender: TObject);
procedure DateTimePicker1Change(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure DateTimePicker2Change(Sender: TObject);
procedure N5Click(Sender: TObject);
private
procedure change_filter;
procedure refresh_structure;
{ Private declarations }
public
{ Public declarations }
Curent_org:Torg;
end;
var
First_form: TFirst_form;
implementation
uses Org_info, T2, Unit1, Unit2;
{$R *.dfm}
procedure TFirst_form.change_filter;
begin
find_personal_table.close;
Find_personal_table.Parameters.ParamByName('First_name').Value:='%'+first_name.Text+'%';
Find_personal_table.Parameters.ParamByName('Family_name').Value:='%'+Family_name.Text+'%';
Find_personal_table.Parameters.ParamByName('Dolg').Value:='%'+Dolg.Text+'%';
find_personal_table.open;
end;
procedure TFirst_form.First_nameChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.FormCreate(Sender: TObject);
begin
Personal_table.Active:=true;
Family_table.Active:=true;
Obraz_table.Active:=true;
Priem_i_perevod.Active:=true;
Pov_kv_table.Active:=true;
Prof_perepodg_table.Active:=true;
Nagr_table.Active:=true;
otp_table.Active:=true;
Attest.Active:=true;
Sl_table.Active:=true;
Change_filter;
Curent_org:=Torg.Create;
Curent_org.Read_info;
// Построение штатного дерева
//otdels_table.Active:=true;
//refresh_structure;
end;
procedure TFirst_form.Family_nameChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.BirthdayChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.SnilsChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.DolgChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.INNChange(Sender: TObject);
begin
Change_filter;
end;
procedure TFirst_form.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Personal_table.Active:=false;
end;
procedure TFirst_form.N4Click(Sender: TObject);
begin
Org_param_form.showmodal;
end;
procedure TFirst_form.Pers_resultCellClick(Column: TColumn);
var
selected:string;
begin
selected:=find_personal_table.FieldByName('Код').AsString;
personal_table.locate('Код',selected,[loCaseInsensitive]);
end;
procedure TFirst_form.N2Click(Sender: TObject);
var
NII:word;
i:word;
WORD:Twordapplication;
file_name,Unit_,Count:olevariant;
errorcode:boolean;
docname:string;
max_obr_level:string;
move_to:olevariant;
procedure bookmark_out (b_m,text:string);
var
bookmark:olevariant;
begin
Bookmark:=b_m;
WORD.ActiveDocument.Bookmarks.Item(Bookmark).Select;
Word.Selection.Text:=text;
end;
begin
// Создание формы Т-2
WORD.free;
WORD:=TWordApplication.Create(First_form);
WORD.connectkind:=ckNewInstance;
docname:='results\'+FAMILY.text+' '+F_NAME.Text+'.doc';
deletefile(docname);
copyfile(pchar(getcurrentdir+'\forms\T2.doc'),pchar(docname),errorcode);
file_name:=getcurrentdir+'\'+docname;
WORD.Documents.Open(file_name,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
bookmark_out ('Org_name',curent_org.orgname);
bookmark_out ('ALPHABIT',ALPHABIT.Text);
bookmark_out ('CHAR_WORK',WORK_CHARACTER.Text);
if sex.Text='Мужской' then bookmark_out ('SEX','М');
if sex.Text='Женский' then bookmark_out ('SEX','Ж');
bookmark_out ('TN',TN.Text);
bookmark_out ('WORK_TYPE',WORK_TYPE.Text);
bookmark_out ('Family_name',FAMILY.Text);
bookmark_out ('First_name',F_NAME.Text);
bookmark_out ('Last_name',L_NAME.Text);
bookmark_out ('DR',DR.Text);
bookmark_out ('MR',MR.Text);
bookmark_out ('GR',GR.Text);
bookmark_out ('L1',L1.Text);
bookmark_out ('L2',L2.Text);
bookmark_out ('L1R',L1R.Text);
bookmark_out ('L2R',L2R.Text);
bookmark_out ('OBR',OBR.Text);
bookmark_out ('PS',PS.Text);
bookmark_out ('PN',PN.Text);
bookmark_out ('DV',DV.Text);
bookmark_out ('PH',KV.Text);
bookmark_out ('i1',i1.Text);
bookmark_out ('i2',i2.Text);
bookmark_out ('a1',a1.Text);
bookmark_out ('a2',a2.Text);
bookmark_out ('dreg',date_reg.Text);
bookmark_out ('n_tel',td.Text);
bookmark_out ('KZ',KZ.Text);
bookmark_out ('VZ',VZ.Text);
bookmark_out ('SP',SP.Text);
bookmark_out ('VUS',VUS.Text);
bookmark_out ('NVK',NVK.Text);
bookmark_out ('SO',SON.Text);
bookmark_out ('KG',KG.Text);
bookmark_out ('SS',SS.Text);
bookmark_out ('OSV',OOS.Text);
if sex.Text = 'Мужской'then if SEM_POL.Text = 'Холост/Незамужем' then bookmark_out ('SEM_pol','Холост');
if sex.Text = 'Женский'then if SEM_POL.Text = 'Холост/Незамужем' then bookmark_out ('SEM_pol','Не замужем');
if sex.Text = 'Мужской'then if SEM_POL.Text = 'Женат/Замужем' then bookmark_out ('SEM_pol','Женат');
if sex.Text = 'Женский'then if SEM_POL.Text = 'Женат/Замужем' then bookmark_out ('SEM_pol','Замужем');
if family_table.RecordCount<>0 then family_table.FindFirst;
move_to:='Sost_sem';
Unit_:=wdCell;
Count:=1;
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to family_table.RecordCount do
begin
Word.Selection.Text:=family_table.FieldByName('Степень родства').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=family_table.FieldByName('Фамилия').AsString+' '+family_table.FieldByName('Имя').AsString+' '+family_table.FieldByName('Отчество').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=family_table.FieldByName('Дата рождения').AsString;
if i<>family_table.RecordCount then begin
family_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
if obraz_table.RecordCount<>0 then obraz_table.FindFirst;
NII:=1;
for i:=1 to obraz_table.RecordCount do
begin
if NII=2 then
if obraz_table.FieldByName('Образовательный уровень').AsString='Высшее профессиональное' then
begin
bookmark_out ('O1',obraz_table.FieldByName('Наименование образовательного учреждения').AsString);
bookmark_out ('DSN1',obraz_table.FieldByName('Серия').AsString+' '+obraz_table.FieldByName('Номер').AsString);
bookmark_out ('K1',obraz_table.FieldByName('Квалификация по диплому').AsString);
bookmark_out ('GO1',inttostr(YearOf(obraz_table.FieldByName('Дата окончания').AsDateTime)));
bookmark_out ('NS1',obraz_table.FieldByName('Направление или специальность по диплому').AsString);
NII:=NII+1;
end;
if NII=1 then
if obraz_table.FieldByName('Образовательный уровень').AsString='Высшее профессиональное' then
begin
bookmark_out ('O2',obraz_table.FieldByName('Наименование образовательного учреждения').AsString);
bookmark_out ('DSN2',obraz_table.FieldByName('Серия').AsString+' '+obraz_table.FieldByName('Номер').AsString);
bookmark_out ('K2',obraz_table.FieldByName('Квалификация по диплому').AsString);
bookmark_out ('GO2',inttostr(YearOf(obraz_table.FieldByName('Дата окончания').AsDateTime)));
bookmark_out ('NS2',obraz_table.FieldByName('Направление или специальность по диплому').AsString);
NII:=NII+1;
end;
if obraz_table.FieldByName('Образовательный уровень').AsString='Аспирантура' then
begin
bookmark_out ('PPO_T','Аспирантура');
bookmark_out ('NONU',obraz_table.FieldByName('Наименование образовательного учреждения').AsString);
bookmark_out ('UNDV',obraz_table.FieldByName('Номер').AsString+', '+obraz_table.FieldByName('Дата окончания').AsString);
bookmark_out ('GO',inttostr(YearOf(obraz_table.FieldByName('Дата окончания').AsDateTime)));
bookmark_out ('SPS',obraz_table.FieldByName('Направление или специальность по диплому').AsString);
end;
if obraz_table.FieldByName('Образовательный уровень').AsString='Адъюнктура' then
begin
bookmark_out ('PPO_T','Адъюнктура');
bookmark_out ('NONU',obraz_table.FieldByName('Наименование образовательного учреждения').AsString);
bookmark_out ('UNDV',obraz_table.FieldByName('Номер').AsString+', '+obraz_table.FieldByName('Дата окончания').AsString);
bookmark_out ('GO',inttostr(YearOf(obraz_table.FieldByName('Дата окончания').AsDateTime)));
bookmark_out ('SPS',obraz_table.FieldByName('Направление или специальность по диплому').AsString);
end;
if obraz_table.FieldByName('Образовательный уровень').AsString='Докторантура' then
begin
bookmark_out ('PPO_T','Докторантура');
bookmark_out ('NONU',obraz_table.FieldByName('Наименование образовательного учреждения').AsString);
bookmark_out ('UNDV',obraz_table.FieldByName('Номер').AsString+', '+obraz_table.FieldByName('Дата окончания').AsString);
bookmark_out ('GO',inttostr(YearOf(obraz_table.FieldByName('Дата окончания').AsDateTime)));
bookmark_out ('SPS',obraz_table.FieldByName('Направление или специальность по диплому').AsString);
end;
if i<>obraz_table.RecordCount then obraz_table.FindNext;
end;
bookmark_out ('PO',PO.Text);
bookmark_out ('PD',PD.Text);
bookmark_out ('RKSD',curent_org.inspect_dolg);
bookmark_out ('RKSN',curent_org.inspect_name);
bookmark_out ('RKSD1',curent_org.inspect_dolg);
bookmark_out ('RKSN1',curent_org.inspect_name);
if priem_i_perevod.Recordcount<>0 then Priem_i_perevod.FindFirst;
move_to:='PPNDR';
Unit_:=wdCell;
Count:=1;
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to Priem_i_perevod.RecordCount do
begin
Word.Selection.Text:=Priem_i_perevod.FieldByName('Дата').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Priem_i_perevod.FieldByName('Структурное подразделение').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Priem_i_perevod.FieldByName('Должность').AsString+', '+Priem_i_perevod.FieldByName('Разряд').AsString+', '+Priem_i_perevod.FieldByName('Класс').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Priem_i_perevod.FieldByName('Оклад').AsString+', '+Priem_i_perevod.FieldByName('Надбавка').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Priem_i_perevod.FieldByName('Основание').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
if i<>Priem_i_perevod.RecordCount then begin
Priem_i_perevod.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Аттестации и решение аттестационной комиссии
if attest.RecordCount<>0 then attest.FindFirst;
move_to:='ATT';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to attest.RecordCount do
begin
Word.Selection.Text:=attest.FieldByName('Дата аттестации').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=attest.FieldByName('Решении комиссии').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=attest.FieldByName('Документ номер').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=attest.FieldByName('Документ дата').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=attest.FieldByName('Основание').AsString;
if i<>attest.RecordCount then begin
attest.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Повышение квалификации
if pov_kv_table.RecordCount<>0 then pov_kv_table.FindFirst;
move_to:='Pov_kv';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to pov_kv_table.RecordCount do
begin
Word.Selection.Text:=pov_kv_table.FieldByName('Дата начала обучения').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Дата окончания обучения').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Вид повышения квалификации').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Наименование образовательного учреждения').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Нименование документа').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Серия').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Дата').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=pov_kv_table.FieldByName('Основание').AsString;
if i<>pov_kv_table.RecordCount then begin
pov_kv_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Профессиональная переподготовка
if Prof_perepodg_table.RecordCount<>0 then Prof_perepodg_table.FindFirst;
move_to:='PP';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to Prof_perepodg_table.RecordCount do
begin
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Дата начала').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Дата окончания').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Специальность').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Документ наименование').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Номер').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Дата').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Prof_perepodg_table.FieldByName('Основание').AsString;
if i<>Prof_perepodg_table.RecordCount then begin
Prof_perepodg_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Награды и поощрения
if nagr_table.RecordCount<>0 then nagr_table.FindFirst;
move_to:='Nagr';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to nagr_table.RecordCount do
begin
Word.Selection.Text:=nagr_table.FieldByName('Наименование награды').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=nagr_table.FieldByName('Наименование документа').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=nagr_table.FieldByName('Номер').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=nagr_table.FieldByName('Дата').AsString;
if i<>nagr_table.RecordCount then begin
nagr_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Отпуск
if otp_table.RecordCount<>0 then otp_table.FindFirst;
move_to:='Otp';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to otp_table.RecordCount do
begin
Word.Selection.Text:=otp_table.FieldByName('Вид отпуска').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Период работы с').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Период работы по').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Количество дней отпуска').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Дата начала').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Дата окончания').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=otp_table.FieldByName('Основание').AsString;
if i<>otp_table.RecordCount then begin
otp_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
// Социальные льготы
if Sl_table.RecordCount<>0 then Sl_table.FindFirst;
move_to:='sl';
WORD.ActiveDocument.Bookmarks.Item(move_to).Select;
for i:=1 to Sl_table.RecordCount do
begin
Word.Selection.Text:=Sl_table.FieldByName('Наименование льготы').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Sl_table.FieldByName('Номер').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Sl_table.FieldByName('Дата выдачи').AsString;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
Word.Selection.Text:=Sl_table.FieldByName('Основание').AsString;
if i<>Sl_table.RecordCount then begin
Sl_table.FindNext;
Word.Selection.MoveRight(Unit_,count,EmptyParam);
end;
end;
WORD.Visible:=true;
end;
procedure TFirst_form.refresh_structure;
// Обновление штатной структуры организации
var
Otdels,All_personal:Ttreenode;
People:Ttreenode;
i:word;
begin
structure.Items.Clear;
// Очищение структуры организации
otdels:=structure.Items.AddFirst(structure.TopItem,curent_org.orgname);
// Создание категории все сотрудники
All_personal:=structure.Items.AddchildFirst(otdels,'Все сотрудники');
personal_table.FindFirst;
for i:=1 to personal_table.RecordCount do
begin
People:=structure.Items.AddchildFirst(ALL_personal,personal_table.fieldbyname('Фамилия').AsString+' '+personal_table.fieldbyname('Имя').AsString+' '+personal_table.fieldbyname('Отчество').AsString);
if i<>personal_table.RecordCount then personal_table.FindNext;
end;
All_personal.AlphaSort;
// Создание категорий отделов организации
otdels_table.FindFirst;
for i:=1 to otdels_table.RecordCount do
begin
structure.Items.AddchildFirst(otdels,otdels_table.fieldbyname('Название отдела').AsString);
if i<>otdels_table.RecordCount then otdels_table.FindNext;
end;
end;
procedure TFirst_form.DateTimePicker1Change(Sender: TObject);
begin
DBEdit2.Text:=DateToStr(DateTimePicker1.Date);
end;
procedure TFirst_form.Button1Click(Sender: TObject);
begin
Form1.Show;
end;
procedure TFirst_form.DateTimePicker2Change(Sender: TObject);
begin
DBEdit4.Text:=DateToStr(DateTimePicker2.Date);
end;
procedure TFirst_form.N5Click(Sender: TObject);
begin
ShellExecute(Application.Handle,'open','help.chm',nil,nil,SW_SHOW);
end;
end.
Дата добавления: 2015-10-13; просмотров: 108 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Руководство пользователя | | | Уважаемые садоводы! |