Применение объектно-ориентированного подхода при проектировании информационной системы (Разработка информационно-логической структуры системы)
Содержание:
Введение
Целью исследования является применение объектно-ориентированного подхода при проектировании информационной системы ( на примере CRM системы). Для достижения цели были сформулированы и решены следующие задачи:
1. Выполнен анализ характеристик объекта автоматизации. Изучен организационная и функциональная структура предприятия.
2. Систематизирован документооборот.
3. Изучен процесс функционирования предприятия. Разработана функциональная модель существующей системы.
4. Предложен новый проект делового процесса и разработана модель деятельности отдела после внедрения автоматизированной системы.
Объектом проектирования является автоматизированная система учета материальных ценностей и их размещение в адресном пространстве склада.
Разработано информационное и частично программное обеспечение системы по методологии UML. В качестве оптимизационного алгоритма планируется использование математического аппарата задачи о ранце.
В данном курсовом проекте рассматривается реализация CRM-системы, предназначенной для коммерческого отдела издательского дома, на основе традиционных методов и подходов проектирования информационных систем. В работе затронуты вопросы, связанные с интеграцией CRM-системы в уже существующую информационную структуру предприятия, реализацией CRM-системы на клиент-серверной архитектуре, выбором и работой с комплексом средств для проектирования и разработки CRM-системы, програмнной реализацией основных функциальных возможностей системы, а именно – формирование базы данных о клиентах, достижение высокой степени прозрачности выполнения заказов клиентов и отслеживание их статуса, организовывание работы менеджеров по направлениям, создание и редактирование флэт-план изданий.
1 Проектирование диаграмм UML
1.1 Развернутое описание предметной области
Создаваемая система будет способна решать задачи оптимального размещения и учёта товаров на складе. Она позволяет проводить оптимизацию размещения единиц хранения с учётом топологии склада; используется оптимизационный алгоритм размещения единиц хранения и пополнения зон отбора.
Функции, реализуемые системой:
- аутентификация пользователя;
- ведение справочников (пользователи, единицы измерения, номенклатура, адреса, поставщики, виды операций, материально-ответственные лица);
- ведение оперативной информации (операции на складах, размещение единиц хранения, комплектация заказа, результаты инвентаризации);
- поиск оптимального места хранения для принятого товара;
- формирование отчётов (наличие товара на складе, перемещение заданного товара по складу, приём товара на склад, отгрузка товара со склада; товары готовые к отгрузке, результат инвентаризации и коррекции товарных запасов) в экранной и документальных формах;
- выдача справок по размещению заданного товара и по его остаткам на текущий момент.
1.2 Разработка информационно-логической структуры системы
UML - язык моделирования и документирования сложных систем. В последнее десятилетие в компьютерном мире наметилась тенденция моделирования сложных систем визуальными (наглядными) моделями. Причем в новых методах проектирования сложных компьютерных систем, например ООП и ООАП, наглядные модели очень часто связываются с такими зрительными образами как "взгляды", направленные на сложную систему с различных точек зрения. Набор из нескольких наглядных моделей (модельных взглядов) создает в сознании специалистов интегральный образ сложной компьютерной системы, которую они совместно проектируют. Вместе с тем, наглядные модели служат эффективным средством документирования компьютерных систем и их программных обеспечений, а также языком общения между программистами, системными аналитиками и заказчиками систем.
Наиболее известными визуальными моделями, используемыми для проектирования компьютерных систем и их программных обеспечений, являются диаграммы языка UML и стандарта IDEF0, таблицы и диаграммы стандарта IDEF1X. Эти визуальные модели имеют математическую основу в виде теорий графов, множеств и матриц.
Диаграммы и спецификации языка UML связали исходный текст программы с характеристиками объекта автоматизации. При этом UML диаграммы опираются на теоретический фундамент в виде теории множеств и теории графов. Наличие теоретической основы позволяет упростить операции преобразования UML диаграмм, нарисованных на экранах дисплеев, в память компьютеров и уменьшить объем памяти, необходимой для хранения диаграмм.
Рисунок также показывает, что UML диаграммы могут преобразовываться в исходный код (прямое преобразование) и наоборот исходный код может преобразовываться в диаграммы (обратное преобразование). В некоторых случаях прямое преобразование может осуществляться автоматически с помощью программ конверторов. В настоящее время группа OMG активно работает над решением проблемы прямого преобразования диаграмм UML. Обратное преобразование может выполнить только человек.
Язык UML имеет сложную иерархическую структуру, показанную на рисунке 1.1.
Рисунок 1.1 - Структура языка UML
Как видно из рисунка, первый иерархический уровень языка UML составляют сущности, отношения между сущностями и наглядные диаграммы.
Язык UML имеет четыре вида сущностей: структурные, поведенческие, группирующие и аннотационные сущности. Они показаны на втором уровне структурного дерева языка UML, представленного на рисунке 1.
Далее на третьем уровне дерева показано, что понятие "структурные сущности" является именем семи видов пиктограмм (выразительных рисунков), которые называются классами, интерфейсами, кооперациями, прецедентами, активными классами, компонентами и узлами.
1.3 Постановка задачи
1.4 Описание логической структуры БД
Рисунок 1.2 – Описание логической структуры БД
1.4.1 Диаграмма вариантов использования
Рисунок 1.3 – Диаграмма вариантов использования
1.4.2 Диаграмма классов
Рисунок 1.4 – Диаграмма классов
1.4.3 Диаграмма последовательности
Рисунок 1.5 -Диаграмма последовательности для варианта использования “Внесение данных об изданиях”
Рисунок 1.6 - Диаграмма последовательности для варианта использования “Выбор направления для менеджеров”
Рисунок 1.7 – Диаграмма последовательности для варианта использования “Ведение тарифной политики”
Рисунок 1.8 - Диаграмма последовательности для варианта использования “Получение данных по размещению”
Рисунок 1.9– Диаграмма последовательности для варианта использования
“Внесение данных по размещению”
Рисунок 1.10 – Диаграмма последовательности для варианта использования
“Получение данных о клиенте”
Рисунок 1.11 – Диаграмма последовательности для варианта использования
“Внесение данных о клиенте”
Рисунок 1.12 – Диаграмма последовательности для варианта использования
“Формирование флэт-плана”
1.4.4 Диаграмма компонентов
Рисунок 1.13 – Диаграмма компонентов “Реализация клиентской части CRM-системы”
Рисунок1.14– Диаграмма компонентов “Реализация серверной части CRM-системы”
Рисунок 1.15 – Диаграмма компонентов “Структура C++-проекта клиентской части CRM-системы
1.4.5– Диаграмма размещения устройств и программных средств CRM-системы в узлах ЛВС
Рисунок 1.16 – Диаграмма размещения устройств и программных средств CRM-системы в узлах ЛВС
2 Проектирование диаграмм IDEF
Рисунок 2.1 – Диаграмма верхнего уровня разрабатываемой ИС на основе методологии IDEF0
Рисунок 2.2 – Декомпозиция верхнего уровня разрабатываемой ИС на основе методологии IDEF0
Рисунок 2.3 – Диаграмма с декомпозицией бизнес-функции “Поиск клиентов” на основе методологии IDEF0
Рисунок 2.4 – Диаграмма с декомпозицией бизнес-функции “Внесение данных в БД” на основе методологии IDEF0
Рисунок 2.5 – Диаграмма с декомпозицией бизнес-функции “Заключение договора” на основе методологии IDEF0
Рисунок 2.6 – Диаграмма с декомпозицией бизнес-функции “Формирование запроса пользователем” на основе методологии IDEF0
Рисунок 2.7 – Диаграмма с декомпозицией бизнес-функции “Обработка запроса базой данных” на основе методологии IDEF0
Рисунок 2.8 – Диаграмма с декомпозицией бизнес-функции “Подготовка макета” на основе методологии IDEF0
Рисунок 2.9 – Диаграмма с декомпозицией бизнес-функции “Оформление договора” на основе методологии IDEF0
Рисунок 2.10 – Диаграмма верхнего уровня разрабатываемой ИС на основе методологии DFD
Рисунок 2.11 – Декомпозиция верхнего уровня разрабатываемой ИС на основе методологии DFD
В соответствии с выбранной методологией IDEF0 в данном разделе были построены диаграммы верхнего уровня разрабатываемой ИС, декомпозиции верхнего уровня разрабатываемой ИС, декомпозиции бизнес-функции ИС. Также в данном разделе, были построены диаграмма верхнего уровня разрабатываемой и диаграмма декомпозиции верхнего уровня разрабатываемой ИС на основании методологии DFD.
Заключение
На этапе обследования была рассмотрена общая характеристика объекта автоматизации, его организационная структура и организация работы. На основе анализа сформированы и обоснованы требования к работе системы и к ее отдельным компонентам. На стадии проектирования разработана общая структура информационной системы в целом, а также по каждой отдельной ее задаче. Определены основные проектные решения, что стало основанием для разработки, отладки программной части и для конструирования эксплуатационной документации.
В результате выполнения данного курсового проекта была спроектирована система управления взаимоотношениями с клиентами для коммерческого отдела издательского дома на основе традиционных методов и подходов проектирования информационных систем, позволяющая снизить время обработки и выполнения заказа на размещение рекламы в периодических журнальных изданиях, и соответствующая предъявленным требованиям.
При выполнении выпускной квалификационной работы был произведен анализ и рассмотренны существующие, наиболее зарекомендовавшие себя CRM-решения, произведен анализ и выбор сервера базы данных, механизма, метода и способа доступа к базе данных, выделены достоинства и функциональные особенности выбранных сред проектирования и разработки (Allfusion Process Modeler 7, IBM Rational Rose v7.0), построены диаграммы, описывающие функциональную схему бизнес-модели организации по методологиям IDEF0 и DFD, составлены диаграммы объектно-ориентированных моделей программных приложений CRM-системы в нотации UML, разработанно клиентское ПО CRM-системы на языке С++.
Список использованных источников
- Тунгусков Ю. А., Совершенствование материально-технического обеспечения ООО «Нижневартовскэнергонефть» на основе логистики, Тюмень, 2005. – 22 с.
- Миротин Л.Б., Ташбвев Ы.Э., Порошина О.Г. Эффективная логистика, М.: Экзамен, 2002 - 152 с.
- Миротин Л.Б., Ташбвев Ы.Э. Системный анализ в логистике, М.: Экзамен, 2004 - 258 с.
- Пиявский С.А., Дерябкин В.П. Методические указания по дипломному проектированию, Самара 2006 – 16 с.
- Основы организации деятельности предприятия, Ларионова О.А., 2005
- Базы данных: модели, разработка, реализация / Карпова Т.- СПб.: Питер, 2001. –304с.
- Конноли Томас, Бегг Каролин. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. — М.: Вильямс, 2000. – 1111 с.
- Буч Г. Объектно-ориентированное проектирование с примерами применения. М., 1992. - 654с.
- Галатенко В. Информационная безопасность // Открытые системы- 1996. – N 1-4.
- Глушаков С.В., Ломотько Д.В. Базы данных .- Х.: Фолио, 2002. – 504 с.
- Бойко В.В., Савинков В.М. Проектирование баз данных информационных систем. – М.: Финансы и статистика, 2000. – 351 с.
Приложение А -Листинг разработанного программного обеспечения
unit MainClients;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, ADODB, IniFiles, Grids, DBGrids,DBDirectoryTemplate,
addsorce, DateUtils, parampoisk, ToolWin, ComCtrls, StdCtrls, jpeg, ExtCtrls,
RzButton, Buttons, RzSpnEdt, RzPanel;
type
TMainClientsForm = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
MainMenu1: TMainMenu;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
DataSource1: TDataSource;
ADOTable2: TADOTable;
ADOTable3: TADOTable;
ADOTable4: TADOTable;
ADOTable5: TADOTable;
ADOTable6: TADOTable;
ADOTable7: TADOTable;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
N18: TMenuItem;
ADOTable8: TADOTable;
N24: TMenuItem;
Image1: TImage;
ToolBar1: TToolBar;
RzRapidFireButton1: TRzRapidFireButton;
RzRapidFireButton2: TRzRapidFireButton;
RzRapidFireButton3: TRzRapidFireButton;
RzRapidFireButton4: TRzRapidFireButton;
RzRapidFireButton5: TRzRapidFireButton;
DataSource2: TDataSource;
h: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N19: TMenuItem;
N25: TMenuItem;
procedure N26Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure hClick(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure RzRapidFireButton5Click(Sender: TObject);
procedure RzRapidFireButton4Click(Sender: TObject);
procedure RzRapidFireButton3Click(Sender: TObject);
procedure RzRapidFireButton2Click(Sender: TObject);
procedure RzRapidFireButton1Click(Sender: TObject);
procedure N12Click(Sender: TObject);
function IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
function IsFormOpen(const FormName : string): Boolean;
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure N4Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N19Click(Sender: TObject);
private
{ Private declarations }
procedure BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
public
{ Public declarations }
end;
var
MainClientsForm: TMainClientsForm;
nastr:tinifile;
DirectoryForm : TDBDirectoryTemplateForm;
prosmForm: Taddform;
mainflag:boolean;
nomer_poisk:word;
flag1,flag2:boolean;
s:string;
var dom_tel,mob_tel:string;
adres,notes:string;
stag:real;
rogd:tdate;
var education,vuz, fakultet,specialnost,kurs:string;
data_vuz, data_kurs:tdate;
lingvo,lingvo_k, comp, comp_k :string;
idlingvo, idcomp, id_education,id_client,id_regim, id_areal, id_organization:integer;
var oblast,profesiya:string;
implementation
{$R *.dfm}
function TMainClientsForm.IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Pred(AFormName.MDIChildCount) DownTo 0 do
if (AFormName.MDIChildren[i].Name = AMDIChildName) then
begin
Result := True;
AFormName.MDIChildren[i].Free;
end;
end;
function TMainClientsForm.IsFormOpen(const FormName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Screen.FormCount - 1 DownTo 0 do
if (Screen.Forms[i].Name = FormName) then
begin
Result := True;
Break;
end;
end;
procedure TMainClientsForm.BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
begin
//создаем форму
DirectoryForm:=TDBDirectoryTemplateForm.Create(Owner);
DirectoryForm.TableDBGrid.DataSource:=ds;
DirectoryForm.Top:=0;
DirectoryForm.Left:=0;
DirectoryForm.Caption:=sCaption;
end;
procedure TMainClientsForm.N12Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Неотработанные документы';
nomer_poisk:=3;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N6Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable1;
mainclientsform.ADOTable1.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem(, mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N7Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable2;
mainclientsform.ADOTable2.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Обязательства', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N8Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable3;
mainclientsform.ADOTable3.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Клиенты', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N9Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable4;
mainclientsform.ADOTable4.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Адреса', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.RzRapidFireButton1Click(Sender: TObject);
begin
MainClientsForm.N3Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton2Click(Sender: TObject);
begin
MainClientsForm.N4Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton3Click(Sender: TObject);
begin
MainClientsForm.N15Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton4Click(Sender: TObject);
begin
MainClientsForm.N14Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton5Click(Sender: TObject);
begin
MainClientsForm.Close;
end;
procedure TMainClientsForm.N10Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable5;
mainclientsform.ADOTable5.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Документы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N20Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable6;
mainclientsform.ADOTable6.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N21Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable7;
mainclientsform.ADOTable7.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Запросы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N23Click(Sender: TObject);
begin
mainclientsform.N3Click(Sender);
mainflag:=true;
flag1:=true;
flag2:=false;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.Height:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N24Click(Sender: TObject);
begin
mainclientsform.N6Click(Sender);
mainflag:=true;
flag1:=false;
flag2:=true;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=true;
ProsmForm.Height:=500;
ProsmForm.Width:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N25Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=7;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.N26Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Отчеты;
nomer_poisk:=8;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.FormCreate(Sender: TObject);
var NewConnection: Widestring;
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+GetCurrentDir+'\baza.mdb;';
ADOConnection1.Open;
MainClientsForm.ADOTable1.Active:=true;
MainClientsForm.ADOTable2.Active:=true;
MainClientsForm.ADOTable3.Active:=true;
MainClientsForm.ADOTable4.Active:=true;
MainClientsForm.ADOTable5.Active:=true;
MainClientsForm.ADOTable6.Active:=true;
MainClientsForm.ADOTable7.Active:=true;
MainClientsForm.ADOTable8.Active:=true;
end;
procedure TMainClientsForm.hClick(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'Резолюция ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=true;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:=' / запрос';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N3Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=true;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.DataSource1DataChange(Sender: TObject;
Field: TField);
var
kodistorii,kodclient,kodfact,kodkred:integer;
datanach:tdatetime;
status:string;
begin
if mainflag then
begin
kodistorii:=mainclientsform.DataSource1.DataSet.FieldByName('Код истории').AsInteger;
ProsmForm.Edit70.Text:=inttostr(kodistorii);
kodclient:=mainclientsform.DataSource1.DataSet.FieldByName('Код клиента').AsInteger;
ProsmForm.Edit71.Text:=inttostr(kodclient);
datanach:=mainclientsform.DataSource1.DataSet.FieldByName('дата начала').AsDateTime;
ProsmForm.Edit83.Text:=Datetostr(datanach);
kodfact:=mainclientsform.DataSource1.DataSet.FieldByName('Код факта').AsInteger;
status:=mainclientsform.DataSource1.DataSet.FieldByName('статус').AsString;
mainclientsform.ADOTable3.Active:=true;
if mainclientsform.ADOTable3.Locate('Код клиента',kodclient , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit72.Text:=mainclientsform.ADOTable3.FieldByName('Фамилия').AsString;
ProsmForm.Edit73.Text:=mainclientsform.ADOTable3.FieldByName('Имя').AsString;
ProsmForm.Edit76.Text:=mainclientsform.ADOTable3.FieldByName('Отчество').AsString;
ProsmForm.Edit74.Text:=mainclientsform.ADOTable3.FieldByName('ИНН').AsString;
ProsmForm.Edit75.Text:=mainclientsform.ADOTable3.FieldByName('доход').AsString;
ProsmForm.Edit77.Text:=mainclientsform.ADOTable3.FieldByName('телефон1').AsString;
end;
if mainclientsform.ADOTable8.Locate('Код факта',kodfact , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit81.Text:=DateToStr(mainclientsform.ADOTable8.FieldByName('').AsDateTime);
ProsmForm.Edit84.Text:=mainclientsform.ADOTable8.FieldByName('нарушение').AsString;
ProsmForm.Edit85.Text:=inttostr(mainclientsform.ADOTable8.FieldByName('%своеврем').AsInteger);
ProsmForm.Edit86.Text:=mainclientsform.ADOTable8.FieldByName('штрафные санкции').AsString;
ProsmForm.Edit82.Text:=mainclientsform.ADOTable8.FieldByName('закрытие').AsString;
end;
mainclientsform.ADOTable7.Active:=true;
if mainclientsform.ADOTable7.Locate('',kodistorii , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit87.Text:=DateToStr(mainclientsform.ADOTable7.FieldByName('дата').AsDateTime);
kodkred:=mainclientsform.ADOTable7.FieldByName('').AsInteger;
end;
mainclientsform.ADOTable6.Active:=true;
if mainclientsform.ADOTable6.Locate(',kodkred , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit88.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit69.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit66.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit79.Text:=mainclientsform.ADOTable6.FieldByName('цель').AsString;
ProsmForm.Edit64.Text:=DateToStr(mainclientsform.ADOTable6.FieldByName('').AsDateTime);
end;
mainclientsform.DataSource2.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear();
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftinteger;
P1.Value:=kodistorii;
stroka_SQL:='SELECT обязательства.* FROM обязательства WHERE (.[]=:P1) ;' ;
MainClientsForm.ADOQuery1.SQL.Add(stroka_SQL);
MainClientsForm.ADOQuery1.Active:=true;
MainClientsForm.ADOQuery1.ExecSQL;
end;
end;
procedure TMainClientsForm.N4Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=true;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N14Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=1;
Poisk.GroupBox1.Visible:=true;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N15Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=2;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
end;
procedure TMainClientsForm.N16Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Поиск клиента';
nomer_poisk:=4;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=true;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N17Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=5;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
procedure TMainClientsForm.N18Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable8;
mainclientsform.ADOTable8.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Фактическое выполнение', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N11Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,' ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N19Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='""';
nomer_poisk:=6;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
end.
unit addsorce;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls, DBCtrls ;
type
TaddForm = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Button1: TButton;
Edit7: TEdit;
GroupBox3: TGroupBox;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Button3: TButton;
GroupBox5: TGroupBox;
Label29: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
Label35: TLabel;
Label37: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label17: TLabel;
Edit29: TEdit;
Edit31: TEdit;
Edit32: TEdit;
Edit33: TEdit;
Edit34: TEdit;
Edit35: TEdit;
Edit37: TEdit;
Button5: TButton;
Edit19: TEdit;
Edit20: TEdit;
Edit21: TEdit;
Edit22: TEdit;
Edit23: TEdit;
Edit17: TEdit;
Label85: TLabel;
Edit89: TEdit;
Label86: TLabel;
Edit90: TEdit;
Label87: TLabel;
Label88: TLabel;
Edit91: TEdit;
Label89: TLabel;
Edit92: TEdit;
Label90: TLabel;
Edit93: TEdit;
Label91: TLabel;
Edit94: TEdit;
Label92: TLabel;
Label93: TLabel;
Edit95: TEdit;
Label94: TLabel;
Edit96: TEdit;
Label95: TLabel;
Edit97: TEdit;
Label96: TLabel;
Edit98: TEdit;
Label18: TLabel;
Label27: TLabel;
Edit18: TEdit;
Label30: TLabel;
Edit27: TEdit;
Label36: TLabel;
Edit30: TEdit;
Label38: TLabel;
Edit36: TEdit;
Label97: TLabel;
Edit38: TEdit;
Label99: TLabel;
Edit99: TEdit;
GroupBox7: TGroupBox;
Label62: TLabel;
Label63: TLabel;
Label64: TLabel;
Label65: TLabel;
Label66: TLabel;
Label67: TLabel;
Label70: TLabel;
Label71: TLabel;
Label73: TLabel;
Label74: TLabel;
Label75: TLabel;
Label77: TLabel;
Label79: TLabel;
Label80: TLabel;
Label81: TLabel;
Label82: TLabel;
Label83: TLabel;
Label84: TLabel;
Label78: TLabel;
Edit64: TEdit;
Edit66: TEdit;
Edit69: TEdit;
Edit70: TEdit;
DBNavigator2: TDBNavigator;
Edit71: TEdit;
Edit72: TEdit;
Edit73: TEdit;
Edit74: TEdit;
Edit75: TEdit;
Edit76: TEdit;
Edit77: TEdit;
Edit79: TEdit;
Edit81: TEdit;
Edit82: TEdit;
Edit83: TEdit;
Edit84: TEdit;
Edit85: TEdit;
Edit86: TEdit;
Edit87: TEdit;
Edit88: TEdit;
DBGrid1: TDBGrid;
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
addForm: TaddForm;
naim:string;
ed_izm:string;
kolvo:integer;
cena:real;
nomerpartiya:string;
sernum:string;
srok_godnost:tdate;
data_postavka:tdate;
postavchik:string;
description:string;
location:string;
location_part:string;
primech:string;
Ayear, amonth,aday:word;
razmer_part,kol:integer;
id_part,idaddional,idlocation,idzapas:integer;
idtov,id_proffesiya:integer;
implementation
uses MainClients;
{$R *.dfm}
procedure TaddForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TaddForm.Button1Click(Sender: TObject);
var
Fam, Name1, Sec_Name, Dep, Dolg, Tel1, tel2, INN :string;
kodadr,koddok,dohod:integer;
oblast,gorod, street, dom, kvartira:string;
naimenovan, nomer, kem:string;
datadok,datarogd:tdate;
begin
oblast:=Edit90.Text;
gorod:= Edit91.Text;
street:=Edit92.Text;
dom:=Edit93.Text;
kvartira:=Edit94.Text;
mainclientsform.ADOTable4.Active:=true;
mainclientsform.ADOTable4.Insert();
mainclientsform.ADOTable4.FieldByName('').AsString:= oblast;
mainclientsform.ADOTable4.FieldByName('').AsString:= gorod;
mainclientsform.ADOTable4.FieldByName('').AsString:= street;
mainclientsform.ADOTable4.FieldByName('дом').AsString:= dom;
mainclientsform.ADOTable4.FieldByName('').AsString:= kvartira;
mainclientsform.ADOTable4.Post();
kodadr:=mainclientsform.ADOTable4.FieldByName('').AsInteger;
naimenovan:=Edit95.Text;
nomer:=Edit96.Text;
kem:=Edit98.Text;;
datadok:=strtodate(Edit97.Text);
mainclientsform.ADOTable5.Active:=true;
mainclientsform.ADOTable5.Insert();
mainclientsform.ADOTable5.FieldByName('').AsString:= naimenovan;
mainclientsform.ADOTable5.FieldByName('').AsString:= nomer;
mainclientsform.ADOTable5.FieldByName('').AsDateTime:=datadok;
mainclientsform.ADOTable5.FieldByName('').AsString:= kem;
mainclientsform.ADOTable5.Post();
koddok:=mainclientsform.ADOTable5.FieldByName('Код документа').AsInteger;
Fam:= Edit1.Text;
Name1:= Edit2.Text;
Sec_Name:= Edit3.Text;
datarogd:=strtodate(Edit4.Text);
Tel1:= Edit7.Text;
Tel2:= Edit89.Text;
INN:= Edit5.Text;
dohod:= strtoint(Edit6.Text);
// добавление данных клиент
mainclientsform.ADOTable3.Active:=true;
mainclientsform.ADOTable3.Insert();
mainclientsform.ADOTable3.FieldByName('').AsString:= Fam;
mainclientsform.ADOTable3.FieldByName('').AsString:= Name1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Sec_Name;
mainclientsform.ADOTable3.FieldByName('').AsDateTime:=datarogd;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel2;
mainclientsform.ADOTable3.FieldByName('').AsString:= INN;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= dohod;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= kodadr;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= koddok;
mainclientsform.ADOTable3.Post();
end;
procedure TaddForm.Button3Click(Sender: TObject);
var summa, egplat,srok,procent, kodkred,kodistorii:integer;
target:string;
datapogash:tdatetime;
begin
target:= Edit15.Text;
datapogash:=StrToDate(Edit36.Text);
summa:=strtoint(Edit16.Text);
egplat:=strtoint(Edit14.Text);
srok:=strtoint(Edit30.Text);
procent:=strtoint(Edit38.Text);
kodistorii:= strtoint(Edit99.Text);
mainclientsform.ADOTable6.Active:=true;
mainclientsform.ADOTable6.Insert();
mainclientsform.ADOTable6.FieldByName('').AsString:= target;
mainclientsform.ADOTable6.FieldByName('').AsDateTime:=datapogash;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=egplat;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=srok;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=procent;
mainclientsform.ADOTable6.Post();
kodkred:= mainclientsform.ADOTable6.FieldByName('').AsInteger;
mainclientsform.ADOTable7.Active:=true;
mainclientsform.ADOTable7.Insert();
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodkred;
mainclientsform.ADOTable7.FieldByName('').AsDateTime:=now;
mainclientsform.ADOTable7.FieldByName('').AsString:='';
mainclientsform.ADOTable7.Post();
end;
procedure TaddForm.Button5Click(Sender: TObject);
var srokvoz, datenach:tdatetime;
narush,sankcii,zakrut,status:string;
procentsv, kodclient, kodfakt, kodistorii, summa:integer;
bank,vidob,nomdog,notes:string;
datadog,srokup:tdatetime;
begin
srokvoz:=StrToDate(Edit21.Text);
narush:=Edit37.Text;
procentsv:=strtoint(Edit32.Text);
sankcii:=Edit29.Text;
zakrut:=Edit31.Text;
mainclientsform.ADOTable8.Active:=true;
mainclientsform.ADOTable8.Insert();
mainclientsform.ADOTable8.FieldByName('').AsDateTime:= srokvoz;
mainclientsform.ADOTable8.FieldByName('').AsString:= narush;
mainclientsform.ADOTable8.FieldByName('%').AsInteger:=procentsv;
mainclientsform.ADOTable8.FieldByName('').AsString:= sankcii;
mainclientsform.ADOTable8.FieldByName('').AsString:= zakrut;
mainclientsform.ADOTable8.Post();
kodfakt:= mainclientsform.ADOTable8.FieldByName('Код факта').AsInteger;
status:=Edit34.Text;
datenach:=StrToDate(Edit35.Text);
kodclient:=strtoint(Edit33.Text);
mainclientsform.ADOTable1.Active:=true;
mainclientsform.ADOTable1.Insert();
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodclient;
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodfakt;
mainclientsform.ADOTable1.FieldByName('').AsDateTime:=datenach;
mainclientsform.ADOTable1.FieldByName('').AsString:= status;
mainclientsform.ADOTable1.Post();
kodistorii:= mainclientsform.ADOTable1.FieldByName('').AsInteger;
bank:=Edit19.Text;
vidob:=Edit20.Text;
nomdog:=Edit23.Text;
notes:=Edit27.Text;
summa:=STRToint(Edit17.Text);
datadog:= StrToDate(Edit22.Text);
srokup:=StrToDate(Edit18.Text);
mainclientsform.ADOTable2.Active:=true;
mainclientsform.ADOTable2.Insert();
mainclientsform.ADOTable2.FieldByName('').AsString:=bank;
mainclientsform.ADOTable2.FieldByName('').AsString:= vidob;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=datadog;
mainclientsform.ADOTable2.FieldByName('').AsString:=nomdog;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=srokup;
mainclientsform.ADOTable2.FieldByName('').AsString:=notes;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable2.Post();
end;
end.
unit parampoisk;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,addsorce,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls ;
type
Tparampoik = class(TForm)
Button1: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit3: TEdit;
GroupBox2: TGroupBox;
Label2: TLabel;
Edit1: TEdit;
GroupBox3: TGroupBox;
Label3: TLabel;
Edit2: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
procedure RzBitBtn4Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
parampoik: Tparampoik;
ChildTemplateForm1: TChildTemplateForm;
ff:string;
flagpoisk:boolean;
p1,p2:tparameter;
all:boolean;
ahour, aminute, asecond, amillisecond :word;
priznak:string;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
idnakl,idzapas,i,sravn,kolnakl,kolzapas, rezerv_kol:integer;
implementation
uses mainclients;
{$R *.dfm}
procedure Tparampoik.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure Tparampoik.RzBitBtn3Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
all:boolean;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
fl_book, fl_avtor, fl_izdat, fl_location, fl_vid, fl_category:boolean;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear;
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
end;
procedure Tparampoik.RzBitBtn4Click(Sender: TObject);
begin
flagpoisk:=false;
MainClientsForm.IsMDIChildOpen(MainClientsForm,'parampoik');
end;
procedure Tparampoik.Button1Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
timenach,timekon:tdatetime;
data:tdatetime;
summa,srok:integer;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery2;
mainclientsform.ADOQuery2.Active:=false;
mainclientsform.ADOQuery2.SQL.Clear;
if nomer_poisk=1 then begin
childTemplateForm.Button1.Visible:=false;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
S:=Edit3.Text;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.[],.[], , .* FROM INNER JOIN История ON.[] =.[] WHERE (((])=:P1));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=4 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit1.Text;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.* FROM Клиент WHERE ((() = :P1))' ;
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=5 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT.[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()=" "));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=6 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT .[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()<>""));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=7 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit2.Text;
summa:=STRTOINT(Edit4.Text);
srok:=STRTOINT(Edit5.Text);
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
P2 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P2.Name:='P2';
P2.DataType:=ftinteger;
P2.Value:=round(0.5*summa/srok);
stroka_SQL:='SELECT, , , , , , .[], .[], ';
stroka_SQL:=stroka_SQL+'FROM INNER JOIN ( INNER JOIN ON.[] =.[]) ON Фактвыполнения.[Код факта] =.[]';
stroka_SQL:=stroka_SQL+'WHERE ( (>:P2) and () AND((Фактвыполнения.нарушение)="нет") AND (( [) AND (() AND (());';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
childTemplateForm.Label1.Caption:=!!!!'
end
else
childTemplateForm.Label1.Caption:=
end;
end;
end;
end.
unit ChildTemplate;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, Grids, DBGrids, ExtCtrls, Menus, StdCtrls, OleServer, ExcelXP, OleCtnrs, ComObj;
type
TChildTemplateForm = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RzToolbarButton2Click(Sender: TObject);
procedure RzToolbarButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
uses mainclients;
procedure TChildTemplateForm.Button1Click(Sender: TObject);
var put,asFileName:string;
var
XlApplication: OleVariant;
XLWorkSheet: OleVariant;
var
vVarApp,vVarBooks,vVarBook,
vVarSheets,vVarSheet,vVarCell,ws: Variant;
i,j:integer;
a:string;
begin
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
try
XlApplication := GetActiveOleObject('Excel.Application');
except
XlApplication := CreateOleObject('Excel.Application');
end;
XlApplication.Workbooks.Open[ExtractFilePath(Application.ExeName)+'zayavka.xlt', 0, true]; XlApplication.Visible := true;
XLWorkSheet := XlApplication.ActiveWorkBook.ActiveSheet;
if nomer_poisk<>8 then
XLWorkSheet.cells[3,3]:=''
else
XLWorkSheet.cells[3,3]:='';
mainclientsform.ADOQuery2.First;
for i:=1 to mainclientsform.ADOQuery2.RecordCount do
begin
j:= 0;
A:= mainclientsform.ADOQuery2.FieldByName('Фамилия').AsString;
XLWorkSheet.cells[i+5,2]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Имя').AsString;
XLWorkSheet.cells[i+5,3]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Отчество').AsString;
XLWorkSheet.cells[i+5,4]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('телефон1').AsString;
XLWorkSheet.cells[i+5,5]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('город').AsString;
XLWorkSheet.cells[i+5,6]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('улица').AsString;
XLWorkSheet.cells[i+5,7]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('дом').AsString;
XLWorkSheet.cells[i+5,8]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('квартира').AsString;
XLWorkSheet.cells[i+5,9]:=A ;
mainclientsform.ADOQuery2.Next;
end ;
end;
end;
procedure TChildTemplateForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
unit MainClients;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, ADODB, IniFiles, Grids, DBGrids,DBDirectoryTemplate,
addsorce, DateUtils, parampoisk, ToolWin, ComCtrls, StdCtrls, jpeg, ExtCtrls,
RzButton, Buttons, RzSpnEdt, RzPanel;
type
TMainClientsForm = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
MainMenu1: TMainMenu;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
DataSource1: TDataSource;
ADOTable2: TADOTable;
ADOTable3: TADOTable;
ADOTable4: TADOTable;
ADOTable5: TADOTable;
ADOTable6: TADOTable;
ADOTable7: TADOTable;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
N18: TMenuItem;
ADOTable8: TADOTable;
N24: TMenuItem;
Image1: TImage;
ToolBar1: TToolBar;
RzRapidFireButton1: TRzRapidFireButton;
RzRapidFireButton2: TRzRapidFireButton;
RzRapidFireButton3: TRzRapidFireButton;
RzRapidFireButton4: TRzRapidFireButton;
RzRapidFireButton5: TRzRapidFireButton;
DataSource2: TDataSource;
h: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N19: TMenuItem;
N25: TMenuItem;
procedure N26Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure hClick(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure RzRapidFireButton5Click(Sender: TObject);
procedure RzRapidFireButton4Click(Sender: TObject);
procedure RzRapidFireButton3Click(Sender: TObject);
procedure RzRapidFireButton2Click(Sender: TObject);
procedure RzRapidFireButton1Click(Sender: TObject);
procedure N12Click(Sender: TObject);
function IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
function IsFormOpen(const FormName : string): Boolean;
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure N4Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N19Click(Sender: TObject);
private
{ Private declarations }
procedure BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
public
{ Public declarations }
end;
var
MainClientsForm: TMainClientsForm;
nastr:tinifile;
DirectoryForm : TDBDirectoryTemplateForm;
prosmForm: Taddform;
mainflag:boolean;
nomer_poisk:word;
flag1,flag2:boolean;
s:string;
var dom_tel,mob_tel:string;
adres,notes:string;
stag:real;
rogd:tdate;
var education,vuz, fakultet,specialnost,kurs:string;
data_vuz, data_kurs:tdate;
lingvo,lingvo_k, comp, comp_k :string;
idlingvo, idcomp, id_education,id_client,id_regim, id_areal, id_organization:integer;
var oblast,profesiya:string;
implementation
{$R *.dfm}
function TMainClientsForm.IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Pred(AFormName.MDIChildCount) DownTo 0 do
if (AFormName.MDIChildren[i].Name = AMDIChildName) then
begin
Result := True;
AFormName.MDIChildren[i].Free;
end;
end;
function TMainClientsForm.IsFormOpen(const FormName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Screen.FormCount - 1 DownTo 0 do
if (Screen.Forms[i].Name = FormName) then
begin
Result := True;
Break;
end;
end;
procedure TMainClientsForm.BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
begin
//создаем форму
DirectoryForm:=TDBDirectoryTemplateForm.Create(Owner);
DirectoryForm.TableDBGrid.DataSource:=ds;
DirectoryForm.Top:=0;
DirectoryForm.Left:=0;
DirectoryForm.Caption:=sCaption;
end;
procedure TMainClientsForm.N12Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Неотработанные документы';
nomer_poisk:=3;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N6Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable1;
mainclientsform.ADOTable1.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem(, mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N7Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable2;
mainclientsform.ADOTable2.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Обязательства', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N8Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable3;
mainclientsform.ADOTable3.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Клиенты', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N9Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable4;
mainclientsform.ADOTable4.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Адреса', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.RzRapidFireButton1Click(Sender: TObject);
begin
MainClientsForm.N3Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton2Click(Sender: TObject);
begin
MainClientsForm.N4Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton3Click(Sender: TObject);
begin
MainClientsForm.N15Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton4Click(Sender: TObject);
begin
MainClientsForm.N14Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton5Click(Sender: TObject);
begin
MainClientsForm.Close;
end;
procedure TMainClientsForm.N10Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable5;
mainclientsform.ADOTable5.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Документы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N20Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable6;
mainclientsform.ADOTable6.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N21Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable7;
mainclientsform.ADOTable7.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Запросы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N23Click(Sender: TObject);
begin
mainclientsform.N3Click(Sender);
mainflag:=true;
flag1:=true;
flag2:=false;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.Height:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N24Click(Sender: TObject);
begin
mainclientsform.N6Click(Sender);
mainflag:=true;
flag1:=false;
flag2:=true;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=true;
ProsmForm.Height:=500;
ProsmForm.Width:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N25Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=7;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.N26Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Отчеты;
nomer_poisk:=8;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.FormCreate(Sender: TObject);
var NewConnection: Widestring;
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+GetCurrentDir+'\baza.mdb;';
ADOConnection1.Open;
MainClientsForm.ADOTable1.Active:=true;
MainClientsForm.ADOTable2.Active:=true;
MainClientsForm.ADOTable3.Active:=true;
MainClientsForm.ADOTable4.Active:=true;
MainClientsForm.ADOTable5.Active:=true;
MainClientsForm.ADOTable6.Active:=true;
MainClientsForm.ADOTable7.Active:=true;
MainClientsForm.ADOTable8.Active:=true;
end;
procedure TMainClientsForm.hClick(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'Резолюция ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=true;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:=' / запрос';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N3Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=true;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.DataSource1DataChange(Sender: TObject;
Field: TField);
var
kodistorii,kodclient,kodfact,kodkred:integer;
datanach:tdatetime;
status:string;
begin
if mainflag then
begin
kodistorii:=mainclientsform.DataSource1.DataSet.FieldByName('Код истории').AsInteger;
ProsmForm.Edit70.Text:=inttostr(kodistorii);
kodclient:=mainclientsform.DataSource1.DataSet.FieldByName('Код клиента').AsInteger;
ProsmForm.Edit71.Text:=inttostr(kodclient);
datanach:=mainclientsform.DataSource1.DataSet.FieldByName('дата начала').AsDateTime;
ProsmForm.Edit83.Text:=Datetostr(datanach);
kodfact:=mainclientsform.DataSource1.DataSet.FieldByName('Код факта').AsInteger;
status:=mainclientsform.DataSource1.DataSet.FieldByName('статус').AsString;
mainclientsform.ADOTable3.Active:=true;
if mainclientsform.ADOTable3.Locate('Код клиента',kodclient , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit72.Text:=mainclientsform.ADOTable3.FieldByName('Фамилия').AsString;
ProsmForm.Edit73.Text:=mainclientsform.ADOTable3.FieldByName('Имя').AsString;
ProsmForm.Edit76.Text:=mainclientsform.ADOTable3.FieldByName('Отчество').AsString;
ProsmForm.Edit74.Text:=mainclientsform.ADOTable3.FieldByName('ИНН').AsString;
ProsmForm.Edit75.Text:=mainclientsform.ADOTable3.FieldByName('доход').AsString;
ProsmForm.Edit77.Text:=mainclientsform.ADOTable3.FieldByName('телефон1').AsString;
end;
if mainclientsform.ADOTable8.Locate('Код факта',kodfact , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit81.Text:=DateToStr(mainclientsform.ADOTable8.FieldByName('').AsDateTime);
ProsmForm.Edit84.Text:=mainclientsform.ADOTable8.FieldByName('нарушение').AsString;
ProsmForm.Edit85.Text:=inttostr(mainclientsform.ADOTable8.FieldByName('%своеврем').AsInteger);
ProsmForm.Edit86.Text:=mainclientsform.ADOTable8.FieldByName('штрафные санкции').AsString;
ProsmForm.Edit82.Text:=mainclientsform.ADOTable8.FieldByName('закрытие').AsString;
end;
mainclientsform.ADOTable7.Active:=true;
if mainclientsform.ADOTable7.Locate('',kodistorii , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit87.Text:=DateToStr(mainclientsform.ADOTable7.FieldByName('дата').AsDateTime);
kodkred:=mainclientsform.ADOTable7.FieldByName('').AsInteger;
end;
mainclientsform.ADOTable6.Active:=true;
if mainclientsform.ADOTable6.Locate(',kodkred , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit88.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit69.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit66.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit79.Text:=mainclientsform.ADOTable6.FieldByName('цель').AsString;
ProsmForm.Edit64.Text:=DateToStr(mainclientsform.ADOTable6.FieldByName('').AsDateTime);
end;
mainclientsform.DataSource2.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear();
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftinteger;
P1.Value:=kodistorii;
stroka_SQL:='SELECT обязательства.* FROM обязательства WHERE (.[]=:P1) ;' ;
MainClientsForm.ADOQuery1.SQL.Add(stroka_SQL);
MainClientsForm.ADOQuery1.Active:=true;
MainClientsForm.ADOQuery1.ExecSQL;
end;
end;
procedure TMainClientsForm.N4Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=true;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N14Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=1;
Poisk.GroupBox1.Visible:=true;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N15Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=2;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
end;
procedure TMainClientsForm.N16Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Поиск клиента';
nomer_poisk:=4;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=true;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N17Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=5;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
procedure TMainClientsForm.N18Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable8;
mainclientsform.ADOTable8.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Фактическое выполнение', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N11Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,' ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N19Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='""';
nomer_poisk:=6;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
end.
unit addsorce;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls, DBCtrls ;
type
TaddForm = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Button1: TButton;
Edit7: TEdit;
GroupBox3: TGroupBox;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Button3: TButton;
GroupBox5: TGroupBox;
Label29: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
Label35: TLabel;
Label37: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label17: TLabel;
Edit29: TEdit;
Edit31: TEdit;
Edit32: TEdit;
Edit33: TEdit;
Edit34: TEdit;
Edit35: TEdit;
Edit37: TEdit;
Button5: TButton;
Edit19: TEdit;
Edit20: TEdit;
Edit21: TEdit;
Edit22: TEdit;
Edit23: TEdit;
Edit17: TEdit;
Label85: TLabel;
Edit89: TEdit;
Label86: TLabel;
Edit90: TEdit;
Label87: TLabel;
Label88: TLabel;
Edit91: TEdit;
Label89: TLabel;
Edit92: TEdit;
Label90: TLabel;
Edit93: TEdit;
Label91: TLabel;
Edit94: TEdit;
Label92: TLabel;
Label93: TLabel;
Edit95: TEdit;
Label94: TLabel;
Edit96: TEdit;
Label95: TLabel;
Edit97: TEdit;
Label96: TLabel;
Edit98: TEdit;
Label18: TLabel;
Label27: TLabel;
Edit18: TEdit;
Label30: TLabel;
Edit27: TEdit;
Label36: TLabel;
Edit30: TEdit;
Label38: TLabel;
Edit36: TEdit;
Label97: TLabel;
Edit38: TEdit;
Label99: TLabel;
Edit99: TEdit;
GroupBox7: TGroupBox;
Label62: TLabel;
Label63: TLabel;
Label64: TLabel;
Label65: TLabel;
Label66: TLabel;
Label67: TLabel;
Label70: TLabel;
Label71: TLabel;
Label73: TLabel;
Label74: TLabel;
Label75: TLabel;
Label77: TLabel;
Label79: TLabel;
Label80: TLabel;
Label81: TLabel;
Label82: TLabel;
Label83: TLabel;
Label84: TLabel;
Label78: TLabel;
Edit64: TEdit;
Edit66: TEdit;
Edit69: TEdit;
Edit70: TEdit;
DBNavigator2: TDBNavigator;
Edit71: TEdit;
Edit72: TEdit;
Edit73: TEdit;
Edit74: TEdit;
Edit75: TEdit;
Edit76: TEdit;
Edit77: TEdit;
Edit79: TEdit;
Edit81: TEdit;
Edit82: TEdit;
Edit83: TEdit;
Edit84: TEdit;
Edit85: TEdit;
Edit86: TEdit;
Edit87: TEdit;
Edit88: TEdit;
DBGrid1: TDBGrid;
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
addForm: TaddForm;
naim:string;
ed_izm:string;
kolvo:integer;
cena:real;
nomerpartiya:string;
sernum:string;
srok_godnost:tdate;
data_postavka:tdate;
postavchik:string;
description:string;
location:string;
location_part:string;
primech:string;
Ayear, amonth,aday:word;
razmer_part,kol:integer;
id_part,idaddional,idlocation,idzapas:integer;
idtov,id_proffesiya:integer;
implementation
uses MainClients;
{$R *.dfm}
procedure TaddForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TaddForm.Button1Click(Sender: TObject);
var
Fam, Name1, Sec_Name, Dep, Dolg, Tel1, tel2, INN :string;
kodadr,koddok,dohod:integer;
oblast,gorod, street, dom, kvartira:string;
naimenovan, nomer, kem:string;
datadok,datarogd:tdate;
begin
oblast:=Edit90.Text;
gorod:= Edit91.Text;
street:=Edit92.Text;
dom:=Edit93.Text;
kvartira:=Edit94.Text;
mainclientsform.ADOTable4.Active:=true;
mainclientsform.ADOTable4.Insert();
mainclientsform.ADOTable4.FieldByName('').AsString:= oblast;
mainclientsform.ADOTable4.FieldByName('').AsString:= gorod;
mainclientsform.ADOTable4.FieldByName('').AsString:= street;
mainclientsform.ADOTable4.FieldByName('дом').AsString:= dom;
mainclientsform.ADOTable4.FieldByName('').AsString:= kvartira;
mainclientsform.ADOTable4.Post();
kodadr:=mainclientsform.ADOTable4.FieldByName('').AsInteger;
naimenovan:=Edit95.Text;
nomer:=Edit96.Text;
kem:=Edit98.Text;;
datadok:=strtodate(Edit97.Text);
mainclientsform.ADOTable5.Active:=true;
mainclientsform.ADOTable5.Insert();
mainclientsform.ADOTable5.FieldByName('').AsString:= naimenovan;
mainclientsform.ADOTable5.FieldByName('').AsString:= nomer;
mainclientsform.ADOTable5.FieldByName('').AsDateTime:=datadok;
mainclientsform.ADOTable5.FieldByName('').AsString:= kem;
mainclientsform.ADOTable5.Post();
koddok:=mainclientsform.ADOTable5.FieldByName('Код документа').AsInteger;
Fam:= Edit1.Text;
Name1:= Edit2.Text;
Sec_Name:= Edit3.Text;
datarogd:=strtodate(Edit4.Text);
Tel1:= Edit7.Text;
Tel2:= Edit89.Text;
INN:= Edit5.Text;
dohod:= strtoint(Edit6.Text);
// добавление данных клиент
mainclientsform.ADOTable3.Active:=true;
mainclientsform.ADOTable3.Insert();
mainclientsform.ADOTable3.FieldByName('').AsString:= Fam;
mainclientsform.ADOTable3.FieldByName('').AsString:= Name1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Sec_Name;
mainclientsform.ADOTable3.FieldByName('').AsDateTime:=datarogd;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel2;
mainclientsform.ADOTable3.FieldByName('').AsString:= INN;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= dohod;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= kodadr;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= koddok;
mainclientsform.ADOTable3.Post();
end;
procedure TaddForm.Button3Click(Sender: TObject);
var summa, egplat,srok,procent, kodkred,kodistorii:integer;
target:string;
datapogash:tdatetime;
begin
target:= Edit15.Text;
datapogash:=StrToDate(Edit36.Text);
summa:=strtoint(Edit16.Text);
egplat:=strtoint(Edit14.Text);
srok:=strtoint(Edit30.Text);
procent:=strtoint(Edit38.Text);
kodistorii:= strtoint(Edit99.Text);
mainclientsform.ADOTable6.Active:=true;
mainclientsform.ADOTable6.Insert();
mainclientsform.ADOTable6.FieldByName('').AsString:= target;
mainclientsform.ADOTable6.FieldByName('').AsDateTime:=datapogash;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=egplat;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=srok;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=procent;
mainclientsform.ADOTable6.Post();
kodkred:= mainclientsform.ADOTable6.FieldByName('').AsInteger;
mainclientsform.ADOTable7.Active:=true;
mainclientsform.ADOTable7.Insert();
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodkred;
mainclientsform.ADOTable7.FieldByName('').AsDateTime:=now;
mainclientsform.ADOTable7.FieldByName('').AsString:='';
mainclientsform.ADOTable7.Post();
end;
procedure TaddForm.Button5Click(Sender: TObject);
var srokvoz, datenach:tdatetime;
narush,sankcii,zakrut,status:string;
procentsv, kodclient, kodfakt, kodistorii, summa:integer;
bank,vidob,nomdog,notes:string;
datadog,srokup:tdatetime;
begin
srokvoz:=StrToDate(Edit21.Text);
narush:=Edit37.Text;
procentsv:=strtoint(Edit32.Text);
sankcii:=Edit29.Text;
zakrut:=Edit31.Text;
mainclientsform.ADOTable8.Active:=true;
mainclientsform.ADOTable8.Insert();
mainclientsform.ADOTable8.FieldByName('').AsDateTime:= srokvoz;
mainclientsform.ADOTable8.FieldByName('').AsString:= narush;
mainclientsform.ADOTable8.FieldByName('%').AsInteger:=procentsv;
mainclientsform.ADOTable8.FieldByName('').AsString:= sankcii;
mainclientsform.ADOTable8.FieldByName('').AsString:= zakrut;
mainclientsform.ADOTable8.Post();
kodfakt:= mainclientsform.ADOTable8.FieldByName('Код факта').AsInteger;
status:=Edit34.Text;
datenach:=StrToDate(Edit35.Text);
kodclient:=strtoint(Edit33.Text);
mainclientsform.ADOTable1.Active:=true;
mainclientsform.ADOTable1.Insert();
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodclient;
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodfakt;
mainclientsform.ADOTable1.FieldByName('').AsDateTime:=datenach;
mainclientsform.ADOTable1.FieldByName('').AsString:= status;
mainclientsform.ADOTable1.Post();
kodistorii:= mainclientsform.ADOTable1.FieldByName('').AsInteger;
bank:=Edit19.Text;
vidob:=Edit20.Text;
nomdog:=Edit23.Text;
notes:=Edit27.Text;
summa:=STRToint(Edit17.Text);
datadog:= StrToDate(Edit22.Text);
srokup:=StrToDate(Edit18.Text);
mainclientsform.ADOTable2.Active:=true;
mainclientsform.ADOTable2.Insert();
mainclientsform.ADOTable2.FieldByName('').AsString:=bank;
mainclientsform.ADOTable2.FieldByName('').AsString:= vidob;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=datadog;
mainclientsform.ADOTable2.FieldByName('').AsString:=nomdog;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=srokup;
mainclientsform.ADOTable2.FieldByName('').AsString:=notes;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable2.Post();
end;
end.
unit parampoisk;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,addsorce,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls ;
type
Tparampoik = class(TForm)
Button1: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit3: TEdit;
GroupBox2: TGroupBox;
Label2: TLabel;
Edit1: TEdit;
GroupBox3: TGroupBox;
Label3: TLabel;
Edit2: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
procedure RzBitBtn4Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
parampoik: Tparampoik;
ChildTemplateForm1: TChildTemplateForm;
ff:string;
flagpoisk:boolean;
p1,p2:tparameter;
all:boolean;
ahour, aminute, asecond, amillisecond :word;
priznak:string;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
idnakl,idzapas,i,sravn,kolnakl,kolzapas, rezerv_kol:integer;
implementation
uses mainclients;
{$R *.dfm}
procedure Tparampoik.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure Tparampoik.RzBitBtn3Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
all:boolean;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
fl_book, fl_avtor, fl_izdat, fl_location, fl_vid, fl_category:boolean;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear;
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
end;
procedure Tparampoik.RzBitBtn4Click(Sender: TObject);
begin
flagpoisk:=false;
MainClientsForm.IsMDIChildOpen(MainClientsForm,'parampoik');
end;
procedure Tparampoik.Button1Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
timenach,timekon:tdatetime;
data:tdatetime;
summa,srok:integer;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery2;
mainclientsform.ADOQuery2.Active:=false;
mainclientsform.ADOQuery2.SQL.Clear;
if nomer_poisk=1 then begin
childTemplateForm.Button1.Visible:=false;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
S:=Edit3.Text;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.[],.[], , .* FROM INNER JOIN История ON.[] =.[] WHERE (((])=:P1));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=4 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit1.Text;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.* FROM Клиент WHERE ((() = :P1))' ;
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=5 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT.[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()=" "));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=6 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT .[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()<>""));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=7 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit2.Text;
summa:=STRTOINT(Edit4.Text);
srok:=STRTOINT(Edit5.Text);
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
P2 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P2.Name:='P2';
P2.DataType:=ftinteger;
P2.Value:=round(0.5*summa/srok);
stroka_SQL:='SELECT, , , , , , .[], .[], ';
stroka_SQL:=stroka_SQL+'FROM INNER JOIN ( INNER JOIN ON.[] =.[]) ON Фактвыполнения.[Код факта] =.[]';
stroka_SQL:=stroka_SQL+'WHERE ( (>:P2) and () AND((Фактвыполнения.нарушение)="нет") AND (( [) AND (() AND (());';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
childTemplateForm.Label1.Caption:=!!!!'
end
else
childTemplateForm.Label1.Caption:=
end;
end;
end;
end.
unit ChildTemplate;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, Grids, DBGrids, ExtCtrls, Menus, StdCtrls, OleServer, ExcelXP, OleCtnrs, ComObj;
type
TChildTemplateForm = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RzToolbarButton2Click(Sender: TObject);
procedure RzToolbarButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
uses mainclients;
procedure TChildTemplateForm.Button1Click(Sender: TObject);
var put,asFileName:string;
var
XlApplication: OleVariant;
XLWorkSheet: OleVariant;
var
vVarApp,vVarBooks,vVarBook,
vVarSheets,vVarSheet,vVarCell,ws: Variant;
i,j:integer;
a:string;
begin
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
try
XlApplication := GetActiveOleObject('Excel.Application');
except
XlApplication := CreateOleObject('Excel.Application');
end;
XlApplication.Workbooks.Open[ExtractFilePath(Application.ExeName)+'zayavka.xlt', 0, true]; XlApplication.Visible := true;
XLWorkSheet := XlApplication.ActiveWorkBook.ActiveSheet;
if nomer_poisk<>8 then
XLWorkSheet.cells[3,3]:=''
else
XLWorkSheet.cells[3,3]:='';
mainclientsform.ADOQuery2.First;
for i:=1 to mainclientsform.ADOQuery2.RecordCount do
begin
j:= 0;
A:= mainclientsform.ADOQuery2.FieldByName('Фамилия').AsString;
XLWorkSheet.cells[i+5,2]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Имя').AsString;
XLWorkSheet.cells[i+5,3]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Отчество').AsString;
XLWorkSheet.cells[i+5,4]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('телефон1').AsString;
XLWorkSheet.cells[i+5,5]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('город').AsString;
XLWorkSheet.cells[i+5,6]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('улица').AsString;
XLWorkSheet.cells[i+5,7]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('дом').AsString;
XLWorkSheet.cells[i+5,8]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('квартира').AsString;
XLWorkSheet.cells[i+5,9]:=A ;
mainclientsform.ADOQuery2.Next;
end ;
end;
end;
procedure TChildTemplateForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
unit MainClients;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Menus, DB, ADODB, IniFiles, Grids, DBGrids,DBDirectoryTemplate,
addsorce, DateUtils, parampoisk, ToolWin, ComCtrls, StdCtrls, jpeg, ExtCtrls,
RzButton, Buttons, RzSpnEdt, RzPanel;
type
TMainClientsForm = class(TForm)
ADOConnection1: TADOConnection;
ADOTable1: TADOTable;
MainMenu1: TMainMenu;
N2: TMenuItem;
N3: TMenuItem;
N4: TMenuItem;
N5: TMenuItem;
N6: TMenuItem;
N7: TMenuItem;
N8: TMenuItem;
N9: TMenuItem;
N10: TMenuItem;
N13: TMenuItem;
N14: TMenuItem;
DataSource1: TDataSource;
ADOTable2: TADOTable;
ADOTable3: TADOTable;
ADOTable4: TADOTable;
ADOTable5: TADOTable;
ADOTable6: TADOTable;
ADOTable7: TADOTable;
N20: TMenuItem;
N21: TMenuItem;
N22: TMenuItem;
ADOQuery1: TADOQuery;
ADOQuery2: TADOQuery;
N18: TMenuItem;
ADOTable8: TADOTable;
N24: TMenuItem;
Image1: TImage;
ToolBar1: TToolBar;
RzRapidFireButton1: TRzRapidFireButton;
RzRapidFireButton2: TRzRapidFireButton;
RzRapidFireButton3: TRzRapidFireButton;
RzRapidFireButton4: TRzRapidFireButton;
RzRapidFireButton5: TRzRapidFireButton;
DataSource2: TDataSource;
h: TMenuItem;
N16: TMenuItem;
N17: TMenuItem;
N19: TMenuItem;
N25: TMenuItem;
procedure N26Click(Sender: TObject);
procedure N18Click(Sender: TObject);
procedure N25Click(Sender: TObject);
procedure hClick(Sender: TObject);
procedure N24Click(Sender: TObject);
procedure N23Click(Sender: TObject);
procedure RzRapidFireButton5Click(Sender: TObject);
procedure RzRapidFireButton4Click(Sender: TObject);
procedure RzRapidFireButton3Click(Sender: TObject);
procedure RzRapidFireButton2Click(Sender: TObject);
procedure RzRapidFireButton1Click(Sender: TObject);
procedure N12Click(Sender: TObject);
function IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
function IsFormOpen(const FormName : string): Boolean;
procedure N6Click(Sender: TObject);
procedure N7Click(Sender: TObject);
procedure N8Click(Sender: TObject);
procedure N9Click(Sender: TObject);
procedure N10Click(Sender: TObject);
procedure N20Click(Sender: TObject);
procedure N21Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure N3Click(Sender: TObject);
procedure DataSource1DataChange(Sender: TObject; Field: TField);
procedure N4Click(Sender: TObject);
procedure N14Click(Sender: TObject);
procedure N15Click(Sender: TObject);
procedure N16Click(Sender: TObject);
procedure N17Click(Sender: TObject);
procedure N11Click(Sender: TObject);
procedure N19Click(Sender: TObject);
private
{ Private declarations }
procedure BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
public
{ Public declarations }
end;
var
MainClientsForm: TMainClientsForm;
nastr:tinifile;
DirectoryForm : TDBDirectoryTemplateForm;
prosmForm: Taddform;
mainflag:boolean;
nomer_poisk:word;
flag1,flag2:boolean;
s:string;
var dom_tel,mob_tel:string;
adres,notes:string;
stag:real;
rogd:tdate;
var education,vuz, fakultet,specialnost,kurs:string;
data_vuz, data_kurs:tdate;
lingvo,lingvo_k, comp, comp_k :string;
idlingvo, idcomp, id_education,id_client,id_regim, id_areal, id_organization:integer;
var oblast,profesiya:string;
implementation
{$R *.dfm}
function TMainClientsForm.IsMDIChildOpen(const AFormName: TForm; const AMDIChildName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Pred(AFormName.MDIChildCount) DownTo 0 do
if (AFormName.MDIChildren[i].Name = AMDIChildName) then
begin
Result := True;
AFormName.MDIChildren[i].Free;
end;
end;
function TMainClientsForm.IsFormOpen(const FormName : string): Boolean;
var
i: Integer;
begin
Result := False;
for i := Screen.FormCount - 1 DownTo 0 do
if (Screen.Forms[i].Name = FormName) then
begin
Result := True;
Break;
end;
end;
procedure TMainClientsForm.BuildGridDatabaseDirectoryItem(sCaption:String; ds:TDataSource);
begin
//создаем форму
DirectoryForm:=TDBDirectoryTemplateForm.Create(Owner);
DirectoryForm.TableDBGrid.DataSource:=ds;
DirectoryForm.Top:=0;
DirectoryForm.Left:=0;
DirectoryForm.Caption:=sCaption;
end;
procedure TMainClientsForm.N12Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Неотработанные документы';
nomer_poisk:=3;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N6Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable1;
mainclientsform.ADOTable1.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem(, mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N7Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable2;
mainclientsform.ADOTable2.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Обязательства', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N8Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable3;
mainclientsform.ADOTable3.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Клиенты', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N9Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable4;
mainclientsform.ADOTable4.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Адреса', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.RzRapidFireButton1Click(Sender: TObject);
begin
MainClientsForm.N3Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton2Click(Sender: TObject);
begin
MainClientsForm.N4Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton3Click(Sender: TObject);
begin
MainClientsForm.N15Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton4Click(Sender: TObject);
begin
MainClientsForm.N14Click(Sender);
end;
procedure TMainClientsForm.RzRapidFireButton5Click(Sender: TObject);
begin
MainClientsForm.Close;
end;
procedure TMainClientsForm.N10Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable5;
mainclientsform.ADOTable5.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Документы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N20Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable6;
mainclientsform.ADOTable6.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N21Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable7;
mainclientsform.ADOTable7.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Запросы', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N23Click(Sender: TObject);
begin
mainclientsform.N3Click(Sender);
mainflag:=true;
flag1:=true;
flag2:=false;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.Height:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N24Click(Sender: TObject);
begin
mainclientsform.N6Click(Sender);
mainflag:=true;
flag1:=false;
flag2:=true;
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=true;
ProsmForm.Height:=500;
ProsmForm.Width:=800;
mainclientsform.DataSource1.DataSet.Last();
end;
procedure TMainClientsForm.N25Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=7;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.N26Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Отчеты;
nomer_poisk:=8;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='Подготовить данные';
end;
procedure TMainClientsForm.FormCreate(Sender: TObject);
var NewConnection: Widestring;
begin
ADOConnection1.Close;
ADOConnection1.ConnectionString :='Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source='+GetCurrentDir+'\baza.mdb;';
ADOConnection1.Open;
MainClientsForm.ADOTable1.Active:=true;
MainClientsForm.ADOTable2.Active:=true;
MainClientsForm.ADOTable3.Active:=true;
MainClientsForm.ADOTable4.Active:=true;
MainClientsForm.ADOTable5.Active:=true;
MainClientsForm.ADOTable6.Active:=true;
MainClientsForm.ADOTable7.Active:=true;
MainClientsForm.ADOTable8.Active:=true;
end;
procedure TMainClientsForm.hClick(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'Резолюция ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=true;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:=' / запрос';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N3Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=true;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.DataSource1DataChange(Sender: TObject;
Field: TField);
var
kodistorii,kodclient,kodfact,kodkred:integer;
datanach:tdatetime;
status:string;
begin
if mainflag then
begin
kodistorii:=mainclientsform.DataSource1.DataSet.FieldByName('Код истории').AsInteger;
ProsmForm.Edit70.Text:=inttostr(kodistorii);
kodclient:=mainclientsform.DataSource1.DataSet.FieldByName('Код клиента').AsInteger;
ProsmForm.Edit71.Text:=inttostr(kodclient);
datanach:=mainclientsform.DataSource1.DataSet.FieldByName('дата начала').AsDateTime;
ProsmForm.Edit83.Text:=Datetostr(datanach);
kodfact:=mainclientsform.DataSource1.DataSet.FieldByName('Код факта').AsInteger;
status:=mainclientsform.DataSource1.DataSet.FieldByName('статус').AsString;
mainclientsform.ADOTable3.Active:=true;
if mainclientsform.ADOTable3.Locate('Код клиента',kodclient , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit72.Text:=mainclientsform.ADOTable3.FieldByName('Фамилия').AsString;
ProsmForm.Edit73.Text:=mainclientsform.ADOTable3.FieldByName('Имя').AsString;
ProsmForm.Edit76.Text:=mainclientsform.ADOTable3.FieldByName('Отчество').AsString;
ProsmForm.Edit74.Text:=mainclientsform.ADOTable3.FieldByName('ИНН').AsString;
ProsmForm.Edit75.Text:=mainclientsform.ADOTable3.FieldByName('доход').AsString;
ProsmForm.Edit77.Text:=mainclientsform.ADOTable3.FieldByName('телефон1').AsString;
end;
if mainclientsform.ADOTable8.Locate('Код факта',kodfact , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit81.Text:=DateToStr(mainclientsform.ADOTable8.FieldByName('').AsDateTime);
ProsmForm.Edit84.Text:=mainclientsform.ADOTable8.FieldByName('нарушение').AsString;
ProsmForm.Edit85.Text:=inttostr(mainclientsform.ADOTable8.FieldByName('%своеврем').AsInteger);
ProsmForm.Edit86.Text:=mainclientsform.ADOTable8.FieldByName('штрафные санкции').AsString;
ProsmForm.Edit82.Text:=mainclientsform.ADOTable8.FieldByName('закрытие').AsString;
end;
mainclientsform.ADOTable7.Active:=true;
if mainclientsform.ADOTable7.Locate('',kodistorii , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit87.Text:=DateToStr(mainclientsform.ADOTable7.FieldByName('дата').AsDateTime);
kodkred:=mainclientsform.ADOTable7.FieldByName('').AsInteger;
end;
mainclientsform.ADOTable6.Active:=true;
if mainclientsform.ADOTable6.Locate(',kodkred , [loCaseInsensitive,loPartialKey]) then
begin
ProsmForm.Edit88.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit69.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit66.Text:=inttostr(mainclientsform.ADOTable6.FieldByName('').AsInteger);
ProsmForm.Edit79.Text:=mainclientsform.ADOTable6.FieldByName('цель').AsString;
ProsmForm.Edit64.Text:=DateToStr(mainclientsform.ADOTable6.FieldByName('').AsDateTime);
end;
mainclientsform.DataSource2.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear();
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftinteger;
P1.Value:=kodistorii;
stroka_SQL:='SELECT обязательства.* FROM обязательства WHERE (.[]=:P1) ;' ;
MainClientsForm.ADOQuery1.SQL.Add(stroka_SQL);
MainClientsForm.ADOQuery1.Active:=true;
MainClientsForm.ADOQuery1.ExecSQL;
end;
end;
procedure TMainClientsForm.N4Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,'');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=true;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N14Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=1;
Poisk.GroupBox1.Visible:=true;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N15Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=2;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=true;
end;
procedure TMainClientsForm.N16Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='Поиск клиента';
nomer_poisk:=4;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=true;
Poisk.GroupBox3.Visible:=false;
end;
procedure TMainClientsForm.N17Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='';
nomer_poisk:=5;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
procedure TMainClientsForm.N18Click(Sender: TObject);
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
mainflag:=false;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable8;
mainclientsform.ADOTable8.Active:=true;
MainClientsForm.BuildGridDatabaseDirectoryItem('Фактическое выполнение', mainclientsform.DataSource1);
end;
procedure TMainClientsForm.N11Click(Sender: TObject);
begin
mainflag:=false;
IsMDIChildOpen(MainClientsForm,' ');
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addForm');
ProsmForm:=Taddform.Create(Owner);
ProsmForm.GroupBox3.Visible:=false;
ProsmForm.GroupBox1.Visible:=false;
ProsmForm.GroupBox5.Visible:=false;
ProsmForm.GroupBox7.Visible:=false;
ProsmForm.Caption:='';
ProsmForm.Height:=400;
end;
procedure TMainClientsForm.N19Click(Sender: TObject);
var poisk:Tparampoik;
begin
IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
IsMDIChildOpen(MainClientsForm,'addform');
IsMDIChildOpen(MainClientsForm,'parampoik');
poisk:=Tparampoik.Create(Owner);
poisk.Left:=530;
poisk.Top:=3;
poisk.Width:=300;
poisk.Caption:='""';
nomer_poisk:=6;
Poisk.GroupBox1.Visible:=false;
Poisk.GroupBox2.Visible:=false;
Poisk.GroupBox3.Visible:=false;
Poisk.Button1.Caption:='';
end;
end.
unit addsorce;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls, DBCtrls ;
type
TaddForm = class(TForm)
GroupBox1: TGroupBox;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Label6: TLabel;
Label7: TLabel;
Edit1: TEdit;
Edit2: TEdit;
Edit3: TEdit;
Edit4: TEdit;
Edit5: TEdit;
Edit6: TEdit;
Button1: TButton;
Edit7: TEdit;
GroupBox3: TGroupBox;
Label14: TLabel;
Label15: TLabel;
Label16: TLabel;
Edit14: TEdit;
Edit15: TEdit;
Edit16: TEdit;
Button3: TButton;
GroupBox5: TGroupBox;
Label29: TLabel;
Label31: TLabel;
Label32: TLabel;
Label33: TLabel;
Label34: TLabel;
Label35: TLabel;
Label37: TLabel;
Label19: TLabel;
Label20: TLabel;
Label21: TLabel;
Label22: TLabel;
Label23: TLabel;
Label17: TLabel;
Edit29: TEdit;
Edit31: TEdit;
Edit32: TEdit;
Edit33: TEdit;
Edit34: TEdit;
Edit35: TEdit;
Edit37: TEdit;
Button5: TButton;
Edit19: TEdit;
Edit20: TEdit;
Edit21: TEdit;
Edit22: TEdit;
Edit23: TEdit;
Edit17: TEdit;
Label85: TLabel;
Edit89: TEdit;
Label86: TLabel;
Edit90: TEdit;
Label87: TLabel;
Label88: TLabel;
Edit91: TEdit;
Label89: TLabel;
Edit92: TEdit;
Label90: TLabel;
Edit93: TEdit;
Label91: TLabel;
Edit94: TEdit;
Label92: TLabel;
Label93: TLabel;
Edit95: TEdit;
Label94: TLabel;
Edit96: TEdit;
Label95: TLabel;
Edit97: TEdit;
Label96: TLabel;
Edit98: TEdit;
Label18: TLabel;
Label27: TLabel;
Edit18: TEdit;
Label30: TLabel;
Edit27: TEdit;
Label36: TLabel;
Edit30: TEdit;
Label38: TLabel;
Edit36: TEdit;
Label97: TLabel;
Edit38: TEdit;
Label99: TLabel;
Edit99: TEdit;
GroupBox7: TGroupBox;
Label62: TLabel;
Label63: TLabel;
Label64: TLabel;
Label65: TLabel;
Label66: TLabel;
Label67: TLabel;
Label70: TLabel;
Label71: TLabel;
Label73: TLabel;
Label74: TLabel;
Label75: TLabel;
Label77: TLabel;
Label79: TLabel;
Label80: TLabel;
Label81: TLabel;
Label82: TLabel;
Label83: TLabel;
Label84: TLabel;
Label78: TLabel;
Edit64: TEdit;
Edit66: TEdit;
Edit69: TEdit;
Edit70: TEdit;
DBNavigator2: TDBNavigator;
Edit71: TEdit;
Edit72: TEdit;
Edit73: TEdit;
Edit74: TEdit;
Edit75: TEdit;
Edit76: TEdit;
Edit77: TEdit;
Edit79: TEdit;
Edit81: TEdit;
Edit82: TEdit;
Edit83: TEdit;
Edit84: TEdit;
Edit85: TEdit;
Edit86: TEdit;
Edit87: TEdit;
Edit88: TEdit;
DBGrid1: TDBGrid;
procedure Button5Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
addForm: TaddForm;
naim:string;
ed_izm:string;
kolvo:integer;
cena:real;
nomerpartiya:string;
sernum:string;
srok_godnost:tdate;
data_postavka:tdate;
postavchik:string;
description:string;
location:string;
location_part:string;
primech:string;
Ayear, amonth,aday:word;
razmer_part,kol:integer;
id_part,idaddional,idlocation,idzapas:integer;
idtov,id_proffesiya:integer;
implementation
uses MainClients;
{$R *.dfm}
procedure TaddForm.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure TaddForm.Button1Click(Sender: TObject);
var
Fam, Name1, Sec_Name, Dep, Dolg, Tel1, tel2, INN :string;
kodadr,koddok,dohod:integer;
oblast,gorod, street, dom, kvartira:string;
naimenovan, nomer, kem:string;
datadok,datarogd:tdate;
begin
oblast:=Edit90.Text;
gorod:= Edit91.Text;
street:=Edit92.Text;
dom:=Edit93.Text;
kvartira:=Edit94.Text;
mainclientsform.ADOTable4.Active:=true;
mainclientsform.ADOTable4.Insert();
mainclientsform.ADOTable4.FieldByName('').AsString:= oblast;
mainclientsform.ADOTable4.FieldByName('').AsString:= gorod;
mainclientsform.ADOTable4.FieldByName('').AsString:= street;
mainclientsform.ADOTable4.FieldByName('дом').AsString:= dom;
mainclientsform.ADOTable4.FieldByName('').AsString:= kvartira;
mainclientsform.ADOTable4.Post();
kodadr:=mainclientsform.ADOTable4.FieldByName('').AsInteger;
naimenovan:=Edit95.Text;
nomer:=Edit96.Text;
kem:=Edit98.Text;;
datadok:=strtodate(Edit97.Text);
mainclientsform.ADOTable5.Active:=true;
mainclientsform.ADOTable5.Insert();
mainclientsform.ADOTable5.FieldByName('').AsString:= naimenovan;
mainclientsform.ADOTable5.FieldByName('').AsString:= nomer;
mainclientsform.ADOTable5.FieldByName('').AsDateTime:=datadok;
mainclientsform.ADOTable5.FieldByName('').AsString:= kem;
mainclientsform.ADOTable5.Post();
koddok:=mainclientsform.ADOTable5.FieldByName('Код документа').AsInteger;
Fam:= Edit1.Text;
Name1:= Edit2.Text;
Sec_Name:= Edit3.Text;
datarogd:=strtodate(Edit4.Text);
Tel1:= Edit7.Text;
Tel2:= Edit89.Text;
INN:= Edit5.Text;
dohod:= strtoint(Edit6.Text);
// добавление данных клиент
mainclientsform.ADOTable3.Active:=true;
mainclientsform.ADOTable3.Insert();
mainclientsform.ADOTable3.FieldByName('').AsString:= Fam;
mainclientsform.ADOTable3.FieldByName('').AsString:= Name1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Sec_Name;
mainclientsform.ADOTable3.FieldByName('').AsDateTime:=datarogd;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel1;
mainclientsform.ADOTable3.FieldByName('').AsString:= Tel2;
mainclientsform.ADOTable3.FieldByName('').AsString:= INN;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= dohod;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= kodadr;
mainclientsform.ADOTable3.FieldByName('').AsInteger:= koddok;
mainclientsform.ADOTable3.Post();
end;
procedure TaddForm.Button3Click(Sender: TObject);
var summa, egplat,srok,procent, kodkred,kodistorii:integer;
target:string;
datapogash:tdatetime;
begin
target:= Edit15.Text;
datapogash:=StrToDate(Edit36.Text);
summa:=strtoint(Edit16.Text);
egplat:=strtoint(Edit14.Text);
srok:=strtoint(Edit30.Text);
procent:=strtoint(Edit38.Text);
kodistorii:= strtoint(Edit99.Text);
mainclientsform.ADOTable6.Active:=true;
mainclientsform.ADOTable6.Insert();
mainclientsform.ADOTable6.FieldByName('').AsString:= target;
mainclientsform.ADOTable6.FieldByName('').AsDateTime:=datapogash;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=egplat;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=srok;
mainclientsform.ADOTable6.FieldByName('').AsInteger:=procent;
mainclientsform.ADOTable6.Post();
kodkred:= mainclientsform.ADOTable6.FieldByName('').AsInteger;
mainclientsform.ADOTable7.Active:=true;
mainclientsform.ADOTable7.Insert();
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable7.FieldByName('').AsInteger:=kodkred;
mainclientsform.ADOTable7.FieldByName('').AsDateTime:=now;
mainclientsform.ADOTable7.FieldByName('').AsString:='';
mainclientsform.ADOTable7.Post();
end;
procedure TaddForm.Button5Click(Sender: TObject);
var srokvoz, datenach:tdatetime;
narush,sankcii,zakrut,status:string;
procentsv, kodclient, kodfakt, kodistorii, summa:integer;
bank,vidob,nomdog,notes:string;
datadog,srokup:tdatetime;
begin
srokvoz:=StrToDate(Edit21.Text);
narush:=Edit37.Text;
procentsv:=strtoint(Edit32.Text);
sankcii:=Edit29.Text;
zakrut:=Edit31.Text;
mainclientsform.ADOTable8.Active:=true;
mainclientsform.ADOTable8.Insert();
mainclientsform.ADOTable8.FieldByName('').AsDateTime:= srokvoz;
mainclientsform.ADOTable8.FieldByName('').AsString:= narush;
mainclientsform.ADOTable8.FieldByName('%').AsInteger:=procentsv;
mainclientsform.ADOTable8.FieldByName('').AsString:= sankcii;
mainclientsform.ADOTable8.FieldByName('').AsString:= zakrut;
mainclientsform.ADOTable8.Post();
kodfakt:= mainclientsform.ADOTable8.FieldByName('Код факта').AsInteger;
status:=Edit34.Text;
datenach:=StrToDate(Edit35.Text);
kodclient:=strtoint(Edit33.Text);
mainclientsform.ADOTable1.Active:=true;
mainclientsform.ADOTable1.Insert();
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodclient;
MainClientsForm.ADOTable1.FieldByName('').AsInteger:=kodfakt;
mainclientsform.ADOTable1.FieldByName('').AsDateTime:=datenach;
mainclientsform.ADOTable1.FieldByName('').AsString:= status;
mainclientsform.ADOTable1.Post();
kodistorii:= mainclientsform.ADOTable1.FieldByName('').AsInteger;
bank:=Edit19.Text;
vidob:=Edit20.Text;
nomdog:=Edit23.Text;
notes:=Edit27.Text;
summa:=STRToint(Edit17.Text);
datadog:= StrToDate(Edit22.Text);
srokup:=StrToDate(Edit18.Text);
mainclientsform.ADOTable2.Active:=true;
mainclientsform.ADOTable2.Insert();
mainclientsform.ADOTable2.FieldByName('').AsString:=bank;
mainclientsform.ADOTable2.FieldByName('').AsString:= vidob;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=datadog;
mainclientsform.ADOTable2.FieldByName('').AsString:=nomdog;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=summa;
mainclientsform.ADOTable2.FieldByName('').AsDateTime:=srokup;
mainclientsform.ADOTable2.FieldByName('').AsString:=notes;
MainClientsForm.ADOTable2.FieldByName('').AsInteger:=kodistorii;
mainclientsform.ADOTable2.Post();
end;
end.
unit parampoisk;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, DB, ADODB, Menus, ChildTemplate, Grids, DBGrids,addsorce,
StdCtrls, Mask,DateUtils, ExtCtrls, ComCtrls ;
type
Tparampoik = class(TForm)
Button1: TButton;
GroupBox1: TGroupBox;
Label1: TLabel;
Edit3: TEdit;
GroupBox2: TGroupBox;
Label2: TLabel;
Edit1: TEdit;
GroupBox3: TGroupBox;
Label3: TLabel;
Edit2: TEdit;
Label4: TLabel;
Edit4: TEdit;
Label5: TLabel;
Edit5: TEdit;
procedure RzBitBtn4Click(Sender: TObject);
procedure RzBitBtn3Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
parampoik: Tparampoik;
ChildTemplateForm1: TChildTemplateForm;
ff:string;
flagpoisk:boolean;
p1,p2:tparameter;
all:boolean;
ahour, aminute, asecond, amillisecond :word;
priznak:string;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
idnakl,idzapas,i,sravn,kolnakl,kolzapas, rezerv_kol:integer;
implementation
uses mainclients;
{$R *.dfm}
procedure Tparampoik.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Action:=caFree;
end;
procedure Tparampoik.RzBitBtn3Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
all:boolean;
stroka_SQL,pole,tabl, srtkl,name_poisk, sqlwhere:string;
fl_book, fl_avtor, fl_izdat, fl_location, fl_vid, fl_category:boolean;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery1;
mainclientsform.ADOQuery1.Active:=false;
mainclientsform.ADOQuery1.SQL.Clear;
P1 :=mainclientsform.ADOQuery1.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
end;
procedure Tparampoik.RzBitBtn4Click(Sender: TObject);
begin
flagpoisk:=false;
MainClientsForm.IsMDIChildOpen(MainClientsForm,'parampoik');
end;
procedure Tparampoik.Button1Click(Sender: TObject);
var ChildTemplateForm:TChildTemplateform;
timenach,timekon:tdatetime;
data:tdatetime;
summa,srok:integer;
begin
MainClientsForm.IsMDIChildOpen(MainClientsForm,'DBDirectoryTemplateForm');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'addform');
MainClientsForm.IsMDIChildOpen(MainClientsForm,'ChildTemplateForm');
ChildTemplateForm:=TChildTemplateform.Create(Owner);
ChildTemplateForm.Left:=0;
ChildTemplateForm.Top:=3;
mainclientsform.DataSource1.DataSet:=mainclientsform.ADOQuery2;
mainclientsform.ADOQuery2.Active:=false;
mainclientsform.ADOQuery2.SQL.Clear;
if nomer_poisk=1 then begin
childTemplateForm.Button1.Visible:=false;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
S:=Edit3.Text;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.[],.[], , .* FROM INNER JOIN История ON.[] =.[] WHERE (((])=:P1));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=4 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit1.Text;
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
p1.DataType := ftstring;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
stroka_SQL:='SELECT.* FROM Клиент WHERE ((() = :P1))' ;
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=5 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT.[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()=" "));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=6 then begin
childTemplateForm.Button1.Visible:=true;
P1:=mainclientsform.ADOQuery2.Parameters.AddParameter();
P1.Name:='P1';
P1.DataType:=ftInteger;
P1.Value:=1;
stroka_SQL:='SELECT .[], .[], , , , , , , , , ';
stroka_SQL:=stroka_SQL+' FROM (Адрес INNER JOIN ON.[] = .[])';
stroka_SQL:=stroka_SQL+'INNER JOIN ON .[] =.[] WHERE ((()<>""));';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
end;
end;
if nomer_poisk=7 then begin
childTemplateForm.Button1.Visible:=false;
S:=Edit2.Text;
summa:=STRTOINT(Edit4.Text);
srok:=STRTOINT(Edit5.Text);
P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P1.Name:='P1';
P1.DataType:=ftString;
P1.Value:=S;
P2 :=mainclientsform.ADOQuery2.Parameters.AddParameter;
P2.Name:='P2';
P2.DataType:=ftinteger;
P2.Value:=round(0.5*summa/srok);
stroka_SQL:='SELECT, , , , , , .[], .[], ';
stroka_SQL:=stroka_SQL+'FROM INNER JOIN ( INNER JOIN ON.[] =.[]) ON Фактвыполнения.[Код факта] =.[]';
stroka_SQL:=stroka_SQL+'WHERE ( (>:P2) and () AND((Фактвыполнения.нарушение)="нет") AND (( [) AND (() AND (());';
if (stroka_SQL<>'') then
begin
mainclientsform.ADOQuery2.SQL.Add(stroka_SQL);
mainclientsform.ADOQuery2.Active:=true;
mainclientsform.ADOQuery2.ExecSQL();
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
childTemplateForm.Label1.Caption:=!!!!'
end
else
childTemplateForm.Label1.Caption:=
end;
end;
end;
end.
unit ChildTemplate;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Buttons, Grids, DBGrids, ExtCtrls, Menus, StdCtrls, OleServer, ExcelXP, OleCtnrs, ComObj;
type
TChildTemplateForm = class(TForm)
DBGrid1: TDBGrid;
Button1: TButton;
Label1: TLabel;
procedure Button1Click(Sender: TObject);
procedure FormClose(Sender: TObject; var Action: TCloseAction);
procedure RzToolbarButton2Click(Sender: TObject);
procedure RzToolbarButton1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
implementation
{$R *.dfm}
uses mainclients;
procedure TChildTemplateForm.Button1Click(Sender: TObject);
var put,asFileName:string;
var
XlApplication: OleVariant;
XLWorkSheet: OleVariant;
var
vVarApp,vVarBooks,vVarBook,
vVarSheets,vVarSheet,vVarCell,ws: Variant;
i,j:integer;
a:string;
begin
if mainclientsform.ADOQuery2.RecordCount>0 then
begin
try
XlApplication := GetActiveOleObject('Excel.Application');
except
XlApplication := CreateOleObject('Excel.Application');
end;
XlApplication.Workbooks.Open[ExtractFilePath(Application.ExeName)+'zayavka.xlt', 0, true]; XlApplication.Visible := true;
XLWorkSheet := XlApplication.ActiveWorkBook.ActiveSheet;
if nomer_poisk<>8 then
XLWorkSheet.cells[3,3]:=''
else
XLWorkSheet.cells[3,3]:='';
mainclientsform.ADOQuery2.First;
for i:=1 to mainclientsform.ADOQuery2.RecordCount do
begin
j:= 0;
A:= mainclientsform.ADOQuery2.FieldByName('Фамилия').AsString;
XLWorkSheet.cells[i+5,2]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Имя').AsString;
XLWorkSheet.cells[i+5,3]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('Отчество').AsString;
XLWorkSheet.cells[i+5,4]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('телефон1').AsString;
XLWorkSheet.cells[i+5,5]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('город').AsString;
XLWorkSheet.cells[i+5,6]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('улица').AsString;
XLWorkSheet.cells[i+5,7]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('дом').AsString;
XLWorkSheet.cells[i+5,8]:=A ;
A:= mainclientsform.ADOQuery2.FieldByName('квартира').AsString;
XLWorkSheet.cells[i+5,9]:=A ;
mainclientsform.ADOQuery2.Next;
end ;
end;
end;
procedure TChildTemplateForm.FormClose(Sender: TObject;
var Action: TCloseAction);
begin
Action:=caFree;
end;
- Анализ и оценка средств реализации объектно-ориентированного подхода к проектированию экономической информационной системы (Понятие ИС цифровой экономики и ее проектировани)
- Технология обслуживания и стандарты сервиса в гостиничном и ресторанном бизнесе (Особенности предоставления гостиничных услуг и ресторанного бизнеса)
- Корпоративная культура в организации (развитие корпоративной культуры)
- Понятие, признаки и правовое регулирование несостоятельности (банкротства)
- Процедура банкротства (содержание, формирование нормативной базы)
- Нотариат в РФ (Нотариат в Советской России )
- Понятие и виды ценных бумаг (Разделение ценных бумаг)
- Понятие и виды ценных бумаг (совершенствование правового регулирования отношений в сфере рынка ценных бумаг)
- Технология «СОМ»
- Основы программирования на языке HTML ( Структура Web-страницы)
- Средства разработки клиентских программ
- Основы работы с операционной системой Windows 7 (УПРАВЛЕНИЕ ПРОЦЕССАМИ ОС WINDOWS 7)