Помощь в написании студенческих работ
Антистрессовый сервис

Автоматизация учета продаж ООО «Интек»

Дипломная Купить готовую Узнать стоимостьмоей работы

Отмечено так же повышение эффективности учета движения товаров. Одним из самых главных качественных результатов является то, что у бухгалтера, несущего наибольшую ответственность за правильность учета, имеется полное представление о товарах, накладных, заказах, поскольку он сам оперативно организует и контролирует учет и движение товаров. При этом в практику работы персонала входят новые… Читать ещё >

Автоматизация учета продаж ООО «Интек» (реферат, курсовая, диплом, контрольная)

Содержание

  • I. АНАЛИТИЧЕСКАЯ ЧАСТ
    • 1. 1. Технико-экономическая характеристика предметной области и предприятия. Анализ деятельности «КАК ЕСТЬ»
      • 1. 1. 1. Характеристика предприятия и его деятельности
      • 1. 1. 2. Организационная структура управления предприятием
      • 1. 1. 3. Программная и техническая архитектура ИС предприятия
    • 1. 2. Характеристика комплекса задач, задачи и обоснование необходимости автоматизации
      • 1. 2. 1. Выбор комплекса задач автоматизации и характеристика существующих бизнес процессов
      • 1. 2. 2. Определение места проектируемой задачи в комплексе задач и ее описание
      • 1. 2. 3. Обоснование необходимости использования вычислительной техники для решения задачи
      • 1. 2. 4. Анализ системы обеспечения информационной безопасности и защиты информации
    • 1. 3. Анализ существующих разработок и выбор стратегии автоматизации
      • 1. 3. 1. Анализ существующих разработок для автоматизации задачи
      • 1. 3. 2. Выбор и обоснование стратегии автоматизации задачи
      • 1. 3. 3. Выбор и обоснование способа приобретения ИС для автоматизации задачи
    • 1. 4. Обоснование проектных решений
      • 1. 4. 1. Обоснование проектных решений по информационному обеспечению
      • 1. 4. 2. Обоснование проектных решений по программному обеспечению
      • 1. 4. 3. Обоснование проектных решений по техническому обеспечению
  • II. ПРОЕКТНАЯ ЧАСТ
    • 2. 1. Разработка проекта автоматизации
      • 2. 1. 1. Этапы жизненного цикла проекта автоматизации
      • 2. 1. 2. Ожидаемые риски на этапах жизненного цикла и их описание
      • 2. 1. 3. Организационно-правовые и программно-аппаратные средства обеспечения информационной безопасности и защиты информации
    • 2. 2. Информационное обеспечение задачи
      • 2. 2. 1. Информационная модель и её описание
      • 2. 2. 2. Характеристика нормативно-справочной, входной и оперативной информации
      • 2. 2. 3. Характеристика результатной информации
    • 2. 3. Описание программного проекта
      • 2. 3. 1. Общие положения
      • 2. 3. 2. Характеристика базы данных
      • 2. 3. 3. Структурная схема пакета
      • 2. 3. 4. Описание программных модулей
    • 2. 4. Контрольный пример реализации проекта и его описание
  • III. ОБОСНОВАНИЕ ЭКОНОМИЧЕСКОЙ ЭФФЕКТИВНОСТИ ПРОЕКТА
    • 3. 1. Выбор и обоснование методики расчёта экономической эффективности
    • 3. 2. Расчёт показателей экономической эффективности проекта
  • ЗАКЛЮЧЕНИЕ
  • ЛИТЕРАТУРА
  • ПРИЛОЖЕНИЕ…Листинг разработанной программы

А также расчетный коэффициент эффективности капитальных затрат:

Ер = 1/Ток (3.8)

Таблица 3.1

Характеристика затрат на обработку информации по базовому варианту.

№ п/п Наименование операций технологического процесса решения комплекса задач Оборудо-вание Ед. Изм. Объем работы в год Норма выра-ботки / производительность устройств ЭВМ (опер/в час.) Тру;

доем-кость Средне-часовая зарплата специалиста (руб.) Часовая норма амортизации (руб. за час) / ст. 1 маш.

часа (руб.) Часовая стоимость накладных расходов (руб.) Стоимостные затраты для ручных операций Стои-мостные затраты для операций, вып. на ЭВМ, тыс 1 2 3 4 5 6 7 8 9 10 11 12 1 прием контроль, регистрация документов калькуля-тор доку-менто-строка 408 12 34 250 0 8,29 12,75 21,04 2 ввод исходных данных канцеляр-ские принадлежности символ 10 101 12 841 250 0,12 128,55 197,77 327,27 3 вычисление и подсчет итогов кальку-лятор действие 8332 2 321 250 0 423,11 650,95 1074,06 4 Занесение данных в результа-тивные формы канцеляр-ские принадлежности символ 128 030 4 4 250 0,12 693 1066,92 1765,54 Итого: Х 31 644 26 1200 Х х х 10 200 300 000

Таблица 3.2

Характеристика затрат на обработку информации по проектируемому варианту.

№ п/п Наименование операций технологического процесса решения комплекса задач Оборудо-вание Ед. Изм. Объем работы в год Норма выра-ботки / произв.

устр. ЭВМ (опер/в час.) Тру;

доем-кость Средне-часовая зарплата специалиста (руб.) Часовая норма амортизации (руб. за час) / ст. 1 маш.

часа (руб.) Часовая стоимость накладных расходов (руб.) Стоимостные затраты для ручных операций Стои-мостные затраты для операций, вып. на ЭВМ тыс. 1 2 3 4 5 6 7 8 9 10 11 12 1 прием контроль, регистрация документов калькуля-тор доку-менто-строка 208 800 34 250×0 8,29 21,04 2 ввод исходных данных персон. компьютер символ 316.

44 150 100 Х 40 х х 316,44 3 вычисление и подсчет итогов персон. компьютер действие 4332 106 50 Х 40 х х 3,2 4 Занесение данных в результа-тивные формы персон. компьютер символ 128 030 5· 106 24.4 Х 40 х х 1,04 5 печать результатов лазерный принтер страница 340 130 2.6 Х 40 х х 40,68 Итого: Х 31 644 150 211 250 х х 8.29 37 500,00 3.2 Расчёт показателей экономической эффективности проекта

В данном пункте рассчитаем затраты (трудовые и стоимостные) на работу в базовом варианте и на работу после внедрения задачи автоматизации.

Расчет трудовых затрат по базовому и проектируемому варианту.

А). Базовый вариант.

Объём работы измеряется количеством обработанных документов, которые должен обработать специалист в существующей системе. При этом учет заявок и проектов ведется на основе бумажных форм документов, то есть ответственное лицо заносит необходимые сведения вручную на формализованный бланк, анализ представленной информации происходит без применения средств автоматизации.

Норма выработки показывает, сколько за один час специалист может обработать документов при базовом варианте решения задачи. В нашем случае норма выработки в час составляет 1,5 документа.

Трудоёмкость (Тб) определяется делением объёма работы на норму выработки.

Тб =31 644 /26.7 = 1200 час. (3.9)

Б.)Проектный вариант.

Норма выработки при проектном варианте показывает, сколько специалист за один час обрабатывает документов с использованием разработанной системы.

Норма выработки в час составляет 12,0 документов.

Трудоёмкость (Тп) определяется делением объёма работы на норму выработки:

Тп = 31 644 /150 = 211 час. (3.10)

Абсолютный показатель снижения трудовых затрат (∆T) рассчитываем используя формулу (3.1):

∆T= 1200−211=989 час.. (3.11)

Для расчета коэффициент относительного снижения трудовых затрат (Кт) используем формулу (3.2):

Кт=989/1200*100%=82,4%. (3.12)

Индекс изменения трудовых затрат или повышение производительности труда (Yт) вычислим используя соотношения (3.3):

Yт =1200/211=5.68. (3.13)

Расчет стоимостных показателей по базовому и проектируемому варианту:

А. Базовый вариант

1. Материальные затраты:

В материальные затраты на обработку информации включаются затраты на расходные материалы. Посчитано, что ежемесячно на это необходимо расходовать 350 рублей.

Картриджи: 1 шт. х 500 руб. = 500 руб.;

Итого: 850 руб. в месяц Соответственно на год потребуется:

850×12 = 10 200 руб.

2.Трудовые затраты.

Количество работников — 1 человека. сотрудника — 250 руб./час. * 100 час. = 25 000 рублей в месяц.

Фонд заработной платы за год составляет:

25 000×12 = 300 000 руб.

Всего затраты на базовый вариант обработки информации составляет:

Сб =300 000+10200=310 200 руб.

Б. Проектный вариант.

1. Материальные затраты:

В материальные затраты на обработку информации включаются следующие расходные материалы:

— картриджи 1 шт. х 500 руб. = 500 руб.;

— бумага 1 шт. х 105 руб. = 105 руб.;

Итого: 605 руб. в месяц Соответственно на год потребуется:

605×12 = 7260 руб.

2.Трудовые затраты.

Количество работников — 1 человека. ФОТ (Фонд оплаты труда) сотрудника — 250 руб./час. * 12,5 = 3125 рублей в месяц.

Фонд заработной платы за год составляет:

3125×12= 37 500 руб.

3.Накладные расходы (в данном случае состоят из суммы стоимости потреблённой электроэнергии):

Кв/ч*1,50 руб.=37 500,00 руб.

Сопровождение — 30 000 руб. в год.

Срок действия проекта — 7 лет, тогда амортизационные отчисления составят 14,28% (100% / 7) от капитальных вложений.

Капитальные вложения (инвестиции) в создание проекта.

Сводный инвестиционный план проекта, таким образом, суммарные затраты стоимость проекта равна 207 750,00 руб.

Сумма амортизационных начислений 14,28% от капитальных вложений:

207 750,00×0, 14 = 29 085,00 руб.

Всего затраты на автоматизированную обработку информации составляют:

Сп = 7260+37 500+37500+30 000+29085= 141 345 руб.

Рассчитаем значение стоимостных показателей:

Абсолютное снижение стоимостных затрат (∆С), вычисляем используя соотношения (3.4):

∆С =310 200- 141 345= 168 855 руб.. (3.14)

Коэффициента относительного снижения стоимостных затрат (Кс) определяется по формуле (3.5):

Кс=168 855/310200*100%=54,4%. (3.15)

Для вычисления индекса изменения стоимостных затрат (Yc) использовать соотношение (3.6):

Yc=310 200/141345=2,19. (3.16)

Определим экономическую эффективность от системы. Это отношение экономического эффекта, полученного за определённый период времени от вложения капитала (или от внедрения мероприятий), к объёму вложенного капитала, обеспечившего внедрение мероприятий и получение экономического эффекта.

Экономический эффект представляет собой чистый доход (прибыль), т. е. цена минус себестоимость.

Расчет экономической эффективности при помощи (3.8) примет вид:

Е =168 855/207750=0,81. (3.17)

Эффективность капитальных затрат определяется сроком окупаемости (Т) дополнительных капитальных затрат на модернизацию информационной системы:

Срок окупаемости определяется, как обратная величина Е (3.7)

Т = 1 /0,81 = 1,2. (3.18)

Экономические показатели, полученные в результате дипломного проектирования, представлены в таблице 3.1:

Таблица 3.3

Экономические показатели проекта Наименование показателей эффективности Ед. измерения Результат Необходимые инвестиции на разработку системы руб. 178 221,00 Годовые затраты на планирование продаж при базовом варианте руб. 310 200,00 Годовые затраты на автоматизированное на планирование продаж руб. 191 345,00 Годовой экономический эффект руб. 168 855,00 Экономическая эффективность проекта 0,81 Срок окупаемости проекта лет 1,2

Получив все необходимые расчетные показатели, для наглядности, составим графические диаграммы, представленные на рисунке 3.1 (сравнительная диаграмма трудовых затрат) и 3.2 — сравнительная диаграмма стоимостных затрат.

Рис. 3.

1. Cравнительная диаграмма трудовых затрат Рис. 3.

2. Сравнительная диаграмма стоимостных затрат

ЗАКЛЮЧЕНИЕ

В дипломном проекте была спроектирована и разработана автоматизированная система учета продаж ООО «Интек».

Динамический процесс проектирования системы происходил в несколько стадий.

На этапе обследования была рассмотрена общая характеристика объекта автоматизации, его организационная структура и организация работы. На основе анализа сформированы и обоснованы требования к работе системы и к ее отдельным компонентам: программному, информационному, техническому.

На стадии проектирования разработана общая структура информационной системы в целом, а также по каждой отдельной ее задаче. Определены основные проектные решения, что стало основанием для разработки, отладки программной части и для конструирования эксплуатационной документации.

В качестве средства для рвзработки программного проекта была выбрана RAD система Borland Development Studio 2006, в качестве средства разработки баз данных СУБД Microsoft SQL Server 2005 Developer. Для нормальной работы системы необходима два варианта конфигурации оборудования — серверной станции и клиентской станции. Для автоматизации рассматриваемой задачи рекомендуемыми системными требования, являются требования, представленные в таблице 1.5−1.

6.

В качестве модели жизненного цикла системы выбрана каскадная модель. Разработка велась в соответствии сос стандартом ІEEE 1074.

Создание и внедрение автоматизированной системы учета продаж ООО «Интек» позволит повысить производительность труда менеджера, увеличит объем продаваемой продукции на 20%, увеличит прибыль фирмы на 20%, сократить время работы менеджера с документами, и поиск товаров в среднем на 30−35% за счет автоматического анализа информации, имеющейся в базе данных.

Использование информационной системы позволит более глубоко и в полном объеме собирать и анализировать необходимую информацию о товарах хранящихся на складе и выполненных заказах на поставку техники.

Отмечено так же повышение эффективности учета движения товаров. Одним из самых главных качественных результатов является то, что у бухгалтера, несущего наибольшую ответственность за правильность учета, имеется полное представление о товарах, накладных, заказах, поскольку он сам оперативно организует и контролирует учет и движение товаров. При этом в практику работы персонала входят новые информационные технологии, такие как совместный авторизованный доступ к справочной информации о наличии товаров на складе, автоматизация рутинных операций, доступ к информационно-справочным ресурсам, автоматическое заполнение документов, исключение недостатков бумажных носителей, контроль качества, стандартизация учета.

Для быстрой и полной адаптации пользователя к системе был разработан удобный дружественный интерфейс пользователя и подробное описание работы с системой в руководстве пользователя.

Для обеспечения надежной защиты информации предусмотрена парольная система разграничения доступа к данным и функциям, авторизация вводимой и корректируемой информации, посредством подстановки и анализа данных.

Считаю, что созданная в дипломном проекте автоматизированная система учета продаж ООО «Интек», полностью соответствует информационным требованиям предприятия и сможет поддерживать это соответствие в течение всего жизненного цикла системы.

Архангельский А.Я. 100 компонентов общего назначения библиотеки Delphi 5. — М.: Бином, 1999. — 266 с.

Архангельский А.Я. Delphi 6. Справочное пособие. — М.: Бином, 2001. — 1024 с.

Архангельский А. Я. Программирование в Delphi 6. — М.: Бином, 2001. — 564 с.

Архангельский А. Я. Язык SQL в Delphi 5. — М.: Бином, 2000. — 205 с.

Базы данных: модели, разработка, реализация / Карпова Т.- СПб.: Питер, 2001. -304с.

Белов А. Н. Бухгалтерский учет в учреждениях непроизводственной сферы. — М.: Финансы и статистика, 1995. — 240с.

Буч Г. Объектно-ориентированное проектирование с примерами применения. М., 1992. — 654с.

Волков В. Ф. Экономика предприятия. — М.: Вита-Пресс, 1998. — 380с.

Галатенко В. Информационная безопасность // Открытые системы- 1996. — N 1−4.

Глушаков С.В., Ломотько Д. В. Базы данных .- Х.: Фолио, 2002. — 504 с.

Голубков Е. П. Маркетинг: стратегии, планы, структуры. М., Дело, 1995. — 450с.

Голубков Е. П. Маркетинговые исследования: теория, методология и практика. М., Финпресс, 1998. — 280с.

Гофман В. Э. Хомоненко А.Д. Delphi 5. — СПб.: — Санки-Петербург, 2000. -800с.

Гофман В. Э. Хомоненко А.Д. Delphi 6. — СПб.: — Санки-Петербург, 2001. -1145с.

Дайан А. и др. Маркетинг. М., Экономика, 1993.

Жидецкий В. Ц. Охрана труда пользователей компьютеров. — К.: «Освгга», 1999. 186с.

Жутова З. У. Бюджетный учет и отчетность. М.: Финансы, 1970.-215с.

Ковалев А. И., Войленко В. В. Маркетинговый анализ. М., Центр экономики и маркетинга, 1996.

Конноли Томас, Бегг Каролин. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. — М.: Вильямс, 2000. — 1111 с.

Культин Н.Б. Delphi 6: Программирование на Object Pascal. — М.: Бином, 2001. — 526 с.

Культин Н.Б. Delphi 7: Программирование на Object Pascal. — М.: Бином, 2003. — 535 с.

Магнус Я.Р., Катышев П. К., Пересецкий А. А. Эконометрика. Начальный курс. М., Дело, 1997

Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. — М.: Диалог-Мифи, 2001. — 304 с.

Матвеева В. О. Бюджетные организации: бухгалтерский учет и налогооблажение. -Харьков: Фактор, 2001. — 566с.

Турчин С. Обзор АСУП для малого бизнеса. Функциональные особенности // Компьютерное обозрение № 17 (286), 2001. с.22−27. // www. ITC-UA.COM

Фатрелл Р., Шафер Д. Шафер Л. Управление программными проектами: достижение оптимального качества при минимуме затрат. М.: «Вильямс», 2003. — 1128с.

Черников А. Поздняков В. От бухгалтерии под Windows к открытым Unix-системам // Компьютерное обозрение № 34 (402), 2003. с.22−27. www. ITC-UA.COM

ПРИЛОЖЕНИЕ Листинг разработанной программы

Главный модуль приложения

unit MainClients;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Menus, DB, ADODB, IniFiles, Grids, DBGrids, DBDirectoryTemplate,

addsorce, DateUtils, parampoisk;

type

TMainClientsForm = class (TForm)

ADOConnection1: TADOConnection;

ADOTable1: TADOTable;

MainMenu1: TMainMenu;

N1: TMenuItem;

N2: TMenuItem;

N3: TMenuItem;

N4: TMenuItem;

N5: TMenuItem;

N6: TMenuItem;

N7: TMenuItem;

N8: TMenuItem;

N9: TMenuItem;

N10: TMenuItem;

N11: TMenuItem;

N12: TMenuItem;

N13: TMenuItem;

N14: TMenuItem;

N15: TMenuItem;

N16: TMenuItem;

N17: TMenuItem;

N19: 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;

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 N22Click (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);

procedure N18Click (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;

idLocation, idAddional, idZapas, idPartiya: integer;

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);

begin

MainClientsForm.Close;

end;

procedure TMainClientsForm. N6Click (Sender: TObject);

begin

IsMDIChildOpen (MainClientsForm,'DBDirectoryTemplateForm');

mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable1;

mainclientsform.ADOTable1.Active:=true;

MainClientsForm.BuildGridDatabaseDirectoryItem ('товары', mainclientsform. DataSource1);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='ИД.№ товар';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='Наименование';

DirectoryForm.TableDBGrid.Fields[2].DisplayLabel:='ид.размещения';

DirectoryForm.TableDBGrid.Fields[3].DisplayLabel:='ид.дополн. информации';

DirectoryForm.TableDBGrid.Fields[4]. DisplayLabel:='ид. запасов';

DirectoryForm.TableDBGrid.Fields[5]. DisplayLabel:='ид. партии';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ накладной';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='дата';

DirectoryForm.TableDBGrid.Fields[2].DisplayLabel:='ид. товара';

DirectoryForm.TableDBGrid.Fields[3]. DisplayLabel:='откуда';

DirectoryForm.TableDBGrid.Fields[4].DisplayLabel:='цель';

DirectoryForm.TableDBGrid.Fields[5].DisplayLabel:='количество';

DirectoryForm.TableDBGrid.Fields[6].DisplayLabel:='стоимость';

DirectoryForm.TableDBGrid.Fields[7].DisplayLabel:='номер партии';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ записи';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='ед. измерения';

DirectoryForm.TableDBGrid.Fields[2]. DisplayLabel:='количество';

DirectoryForm.TableDBGrid.Fields[3].DisplayLabel:='стоимость';

DirectoryForm.TableDBGrid.Fields[4].DisplayLabel:='резерв. кол.';

DirectoryForm.TableDBGrid.Fields[5]. DisplayLabel:='кто резерв.';

DirectoryForm.TableDBGrid.Fields[6]. DisplayLabel:='дата резерв.';

DirectoryForm.TableDBGrid.Fields[7]. DisplayLabel:='примечание';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ заказа';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='дата';

DirectoryForm.TableDBGrid.Fields[2].DisplayLabel:='заказчик';

DirectoryForm.TableDBGrid.Fields[3].DisplayLabel:='№ товара';

DirectoryForm.TableDBGrid.Fields[4]. DisplayLabel:='количество';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ записи';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='место на складе';

DirectoryForm.TableDBGrid.Fields[2]. DisplayLabel:='уточнение размещение';

DirectoryForm.TableDBGrid.Fields[3]. DisplayLabel:='примечание';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ записи';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='серийный номер';

DirectoryForm.TableDBGrid.Fields[2]. DisplayLabel:='срок гарантированной работы';

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);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='№ записи';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='№ партии';

DirectoryForm.TableDBGrid.Fields[2]. DisplayLabel:='количество';

DirectoryForm.TableDBGrid.Fields[3].DisplayLabel:='откуда';

DirectoryForm.TableDBGrid.Fields[4].DisplayLabel:='дата';

DirectoryForm.TableDBGrid.Fields[5].DisplayLabel:='описание операции';

end;

procedure TMainClientsForm. N22Click (Sender: TObject);

begin

IsMDIChildOpen (MainClientsForm,'addForm');

IsMDIChildOpen (MainClientsForm,'addForm');

mainflag:=false;

MainClientsForm.N6Click (sender);

prosmForm:=Taddform.Create (Owner);

prosmForm.Top:=230;

prosmForm.Left:=0;

prosmForm.Width:=500;

prosmForm.Height:=200;

prosmForm.Caption:='просмотр записей';

prosmForm.DBNavigator1.Visible:=true;

mainflag:=true;

prosmForm.Show;

prosmForm.Button1.Visible:=false;

prosmForm.GroupBox3.Visible:=false;

prosmForm.GroupBox4.Visible:=false;

MainClientsForm.DataSource1.DataSet.last

end;

procedure TMainClientsForm. FormCreate (Sender: TObject);

var NewConnection: Widestring;

begin

NewConnection := PromptDataSource (Handle, MainClientsForm. ADOConnection1.Connectionstring);

MainClientsForm.ADOConnection1.Connectionstring:=NewConnection;

MainClientsForm.ADOConnection1.Connected:=true;

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. N3Click (Sender: TObject);

var dobForm: Taddform;

begin

mainflag:=false;

IsMDIChildOpen (MainClientsForm,'addForm');

dobForm:=Taddform.Create (Owner);

dobForm.Top:=240;

dobForm.Left:=3;

dobForm.Caption:='добавление записи';

dobForm.Show;

dobForm.Button1.Visible:=true;

dobForm.GroupBox1.Visible:=false;

dobForm.GroupBox3.Visible:=false;

dobForm.GroupBox4.Visible:=false;

end;

procedure TMainClientsForm. DataSource1DataChange (Sender: TObject;

Field: TField);

var

sql_str, rez: string;

P11:Tparameter;

rezdate:tdatetime;

rezint:integer;

rezfloat:real;

Ayear, amonth, aday, ahour, aminute, asecond, amillisecond: word;

begin

if mainflag then

begin

prosmForm.edit1.text:='';

prosmForm.edit2.text:='';

prosmForm.edit3.text:='';

prosmForm.edit4.text:='';

prosmForm.edit5.text:='';

prosmForm.edit6.text:='1';

prosmForm.edit7.text:='1';

prosmForm.edit9.text:='1';

prosmForm.edit10.text:='1';

prosmForm.edit8.text:='2009';

prosmForm.edit11.text:='2009';

prosmForm.edit12.text:='';

prosmForm.edit13.text:='';

prosmForm.edit14.text:='';

prosmForm.edit15.text:='';

prosmForm.edit16.text:='';

prosmForm.edit17.text:='';

prosmForm.edit18.text:='';

prosmForm.edit19.text:='';

prosmForm.edit20.text:='';

prosmForm.edit21.text:='';

prosmForm.edit22.text:='';

prosmForm.edit23.text:='';

prosmForm.Edit1.Text:=MainClientsForm.DataSource1.DataSet.FieldByName ('nameTovar').AsString;

idLocation:=MainClientsForm.DataSource1.DataSet.FieldByName ('idLocation').AsInteger; idAddional:=MainClientsForm.DataSource1.DataSet.FieldByName ('idAddional').AsInteger;

idZapas:=MainClientsForm.DataSource1.DataSet.FieldByName ('idZapas').AsInteger;

idPartiya:=MainClientsForm.DataSource1.DataSet.FieldByName ('idPartiya').AsInteger;

sql_str:='SELECT * from Location where idLocation= :P11';

MainClientsForm.ADOQuery1.Active:=false;

MainClientsForm.ADOQuery1.SQL.Clear;

P11 :=mainclientsform.ADOQuery1.Parameters.AddParameter;

P11.Name:='P11';

p11.DataType := ftinteger;

P11.Value:=idLocation;

P11.Size:=4;

MainClientsForm.ADOQuery1.SQL.Add (sql_str);

MainClientsForm.ADOQuery1.Active:=true;

MainClientsForm.ADOQuery1.ExecSQL;

rez:=MainClientsForm.ADOQuery1.FieldByName ('Location').AsString;

prosmForm.Edit14.Text:=rez;

rez:=MainClientsForm.ADOQuery1.FieldByName ('addional_location').AsString;

prosmForm.Edit15.Text:=rez;

rez:=MainClientsForm.ADOQuery1.FieldByName ('notes').AsString;

prosmForm.Edit16.Text:=rez;

// дополнительные сведения

sql_str:='SELECT * from Addional where idAddional= :P11';

MainClientsForm.ADOQuery1.Active:=false;

MainClientsForm.ADOQuery1.SQL.Clear;

P11 :=mainclientsform.ADOQuery1.Parameters.AddParameter;

P11.Name:='P11';

p11.DataType := ftinteger;

P11.Value:= idAddional;

P11.Size:=4;

MainClientsForm.ADOQuery1.SQL.Add (sql_str);

MainClientsForm.ADOQuery1.Active:=true;

MainClientsForm.ADOQuery1.ExecSQL;

rez:=MainClientsForm.ADOQuery1.FieldByName ('Ser_num').AsString;

prosmForm.Edit5.Text:=rez;

rezdate:= MainClientsForm. ADOQuery1.FieldByName ('srok_godnost').AsDateTime;

decodedatetime (rezdate, Ayear, amonth, aday, ahour, aminute, asecond, amillisecond);

prosmForm.Edit6.Text:=inttostr (aday);

prosmForm.Edit7.Text:=inttostr (amonth);

prosmForm.Edit8.Text:=inttostr (Ayear);

// запасы

sql_str:='SELECT * from zapas where idzapas= :P11';

MainClientsForm.ADOQuery1.Active:=false;

MainClientsForm.ADOQuery1.SQL.Clear;

P11 :=mainclientsform.ADOQuery1.Parameters.AddParameter;

P11.Name:='P11';

p11.DataType := ftinteger;

P11.Value:= idzapas;

P11.Size:=4;

MainClientsForm.ADOQuery1.SQL.Add (sql_str);

MainClientsForm.ADOQuery1.Active:=true;

MainClientsForm.ADOQuery1.ExecSQL;

rez:=MainClientsForm.ADOQuery1.FieldByName ('Izmerenie').AsString;

prosmForm.ComboBox1.Text:=rez;

rezint:= MainClientsForm. ADOQuery1.FieldByName ('zapas').AsInteger;

prosmForm.Edit2.Text:=inttostr (rezint);

rezfloat:= MainClientsForm. ADOQuery1.FieldByName ('stoimost').AsFloat;

prosmForm.Edit3.Text:=floattostr (rezfloat);

rez:=MainClientsForm.ADOQuery1.FieldByName ('rezerv_name').AsString;

prosmForm.Edit19.Text:=rez;

rez:=MainClientsForm.ADOQuery1.FieldByName ('rezerv_prim').AsString;

prosmForm.Edit23.Text:=rez;

rezint:= MainClientsForm. ADOQuery1.FieldByName ('rezerv_kol').AsInteger;

prosmForm.Edit18.Text:=inttostr (rezint);

rezdate:= MainClientsForm. ADOQuery1.FieldByName ('rezerv_date').AsDateTime;

decodedatetime (rezdate, Ayear, amonth, aday, ahour, aminute, asecond, amillisecond);

aday:=1;

amonth:=1;

Ayear:=0;

if Ayear>2000 then begin

prosmForm.Edit20.Text:=inttostr (aday);

prosmForm.Edit21.Text:=inttostr (amonth);

prosmForm.Edit22.Text:=inttostr (Ayear);

end;

// партия

sql_str:='SELECT * from Partiya where idPartiya= :P11';

MainClientsForm.ADOQuery1.Active:=false;

MainClientsForm.ADOQuery1.SQL.Clear;

P11 :=mainclientsform.ADOQuery1.Parameters.AddParameter;

P11.Name:='P11';

p11.DataType := ftinteger;

P11.Value:= idPartiya;

P11.Size:=4;

MainClientsForm.ADOQuery1.SQL.Add (sql_str);

MainClientsForm.ADOQuery1.Active:=true;

MainClientsForm.ADOQuery1.ExecSQL;

rez:=MainClientsForm.ADOQuery1.FieldByName ('Nom_part').AsString;

prosmForm.Edit4.Text:=rez;

rez:=MainClientsForm.ADOQuery1.FieldByName ('description').AsString;

prosmForm.Edit13.Text:=rez;

rez:=MainClientsForm.ADOQuery1.FieldByName ('otkuda').AsString;

prosmForm.Edit12.Text:=rez;

rezdate:= MainClientsForm. ADOQuery1.FieldByName ('kogda').AsDateTime;

aday:=1;

amonth:=1;

Ayear:=0;

if Ayear>2000 then begin

prosmForm.Edit9.Text:=inttostr (aday);

prosmForm.Edit10.Text:=inttostr (amonth);

prosmForm.Edit11.Text:=inttostr (Ayear);

end;

end;

end;

procedure TMainClientsForm. N4Click (Sender: TObject);

var zakForm: Taddform;

begin

mainflag:=false;

IsMDIChildOpen (MainClientsForm,'zakForm');

IsMDIChildOpen (MainClientsForm,'addForm');

zakForm:=Taddform.Create (Owner);

zakForm.Top:=240;

zakForm.Left:=3;

zakForm.Caption:='создание заказа';

zakForm.Show;

zakForm.Button1.Visible:=true;

zakForm.GroupBox1.Visible:=false;

zakForm.GroupBox2.Visible:=false;

zakForm.GroupBox4.Visible:=false;

zakForm.GroupBox3.Left:=2;

zakForm.GroupBox3.Top:=2;

// show;

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.Label2.Visible:=false;

poisk.Label3.Visible:=false;

poisk.Label7.Visible:=false;

poisk.Edit2.Visible:=false;

poisk.Edit3.Visible:=false;

poisk.Edit4.Visible:=false;

poisk.Edit5.Visible:=false;

poisk.Edit6.Visible:=false;

poisk.Edit7.Visible:=false;

poisk.UpDown1.Visible:=false;

poisk.UpDown2.Visible:=false;

poisk.UpDown3.Visible:=false;

poisk.UpDown4.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.Edit1.Visible:=false;

poisk.Label1.Visible:=false;

poisk.Label3.Visible:=false;

poisk.Label2.Visible:=false;

poisk.Edit5.Visible:=false;

poisk.Edit6.Visible:=false;

poisk.Edit7.Visible:=false;

poisk.UpDown3.Visible:=false;

poisk.UpDown4.Visible:=false;

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:=3;

poisk.Label2.Visible:=false;

poisk.Label3.Visible:=false;

poisk.Label7.Visible:=false;

poisk.Edit2.Visible:=false;

poisk.Edit3.Visible:=false;

poisk.Edit4.Visible:=false;

poisk.Edit5.Visible:=false;

poisk.Edit6.Visible:=false;

poisk.Edit7.Visible:=false;

poisk.UpDown1.Visible:=false;

poisk.UpDown2.Visible:=false;

poisk.UpDown3.Visible:=false;

poisk.UpDown4.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:=4;

poisk.Label1.Visible:=false;

poisk.Edit1.Visible:=false;

poisk.Label7.Caption:='Накладные в период'

end;

procedure TMainClientsForm. N11Click (Sender: TObject);

var naklForm: Taddform;

begin

mainflag:=false;

IsMDIChildOpen (MainClientsForm,'naklForm');

IsMDIChildOpen (MainClientsForm,'addForm');

naklForm:=Taddform.Create (Owner);

naklForm.Top:=240;

naklForm.Left:=3;

naklForm.Caption:='создание накладной';

naklForm.Show;

naklForm.GroupBox1.Visible:=false;

naklForm.GroupBox2.Visible:=false;

naklForm.GroupBox3.Visible:=false;

naklForm.GroupBox4.Left:=2;

naklForm.GroupBox4.Top:=2;

naklForm.GroupBox4.Width:=600;

naklForm.GroupBox4.Height:=250;

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:=5;

poisk.Label2.Visible:=false;

poisk.Label3.Visible:=false;

poisk.Label7.Visible:=false;

poisk.Edit2.Visible:=false;

poisk.Edit3.Visible:=false;

poisk.Edit4.Visible:=false;

poisk.Edit5.Visible:=false;

poisk.Edit6.Visible:=false;

poisk.Edit7.Visible:=false;

poisk.UpDown1.Visible:=false;

poisk.UpDown2.Visible:=false;

poisk.UpDown3.Visible:=false;

poisk.UpDown4.Visible:=false;

poisk.Label1.Caption:='номер накладной';

poisk.Button1.Caption:='ПРОВОДКА'

end;

procedure TMainClientsForm. N18Click (Sender: TObject);

begin

IsMDIChildOpen (MainClientsForm,'DBDirectoryTemplateForm');

mainclientsform.DataSource1.DataSet:=mainclientsform.ADOTable8;

mainclientsform.ADOTable8.Active:=true;

MainClientsForm.BuildGridDatabaseDirectoryItem ('покупатели', mainclientsform. DataSource1);

DirectoryForm.TableDBGrid.Fields[0]. DisplayLabel:='ИД.№ покупателя';

DirectoryForm.TableDBGrid.Fields[1]. DisplayLabel:='Ф.И.О. / Наименование организации';

DirectoryForm.TableDBGrid.Fields[2]. DisplayLabel:='Адрес';

DirectoryForm.TableDBGrid.Fields[3].DisplayLabel:='Банковские реквизиты';

{DirectoryForm.TableDBGrid.Fields[4]. DisplayLabel:='ид. запасов';

DirectoryForm.TableDBGrid.Fields[5]. DisplayLabel:='ид. партии';}

end;

end.

Модуль ParamPoisk

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;

Edit1: TEdit;

Label7: TLabel;

Edit2: TEdit;

UpDown1: TUpDown;

Edit3: TEdit;

Edit4: TEdit;

UpDown2: TUpDown;

Edit5: TEdit;

UpDown3: TUpDown;

Edit6: TEdit;

UpDown4: TUpDown;

Edit7: TEdit;

Label2: TLabel;

Label3: TLabel;

procedure RzBitBtn4Click (Sender: TObject);

procedure RzBitBtn3Click (Sender: TObject);

procedure RzBitBtn1Click (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. RzBitBtn1Click (Sender: TObject);

begin

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;

// P1. Direction := ptInput;

{

if edit1. Text<>'' then begin

srtkl := rzedit1. Text;

name_poisk:= 'book.namebook'

end;

if rzedit2. Text<>'' then begin

srtkl := rzedit2. Text;

name_poisk:= 'izdat.nameizdat'

end;

if rzedit3. Text<>'' then begin

srtkl := rzedit3. Text;

name_poisk:= 'Avtor.FirstNameAvtor'

end;

if rzedit4. Text<>'' then begin

srtkl := rzedit4. Text;

name_poisk:= 'ucheb.kust_discipline'

end;

if rzedit5. Text<>'' then begin

srtkl := rzedit5. Text;

name_poisk:= 'ucheb.discipline';

end;

if srtkl<>'' then

begin

srtkl:='%'+ srtkl+'%';

P1.Value:=srtkl;

P1.Size:=Length (srtkl);

end;

all:=true;

pole:='';

fl_book:=false;

fl_avtor:=false;

fl_izdat:=false;

fl_vid:=false;

fl_category:=false;

if RzCheckBox1. Checked then begin

pole:=pole+'book.namebook AS Название';

fl_book:=true;

end

else all:=false;

if RzCheckBox2. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'avtor.FirstNameAvtor AS Фамилия';

fl_avtor:=true;

end

else all:=false;

if RzCheckBox3. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'book.anotaciy AS Аннотация';

fl_book:=true;

end

else all:=false;

if RzCheckBox4. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'book.god AS Аннотация';

fl_book:=true;

end

else all:=false;

if RzCheckBox6. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'Izdat.nameizdat AS Издательство';

fl_izdat:=true;

end

else all:=false;

if RzCheckBox7. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'Izdat.gorod AS Город';

fl_izdat:=true;

end

else all:=false;

if RzCheckBox9. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'book.kol_str AS Страницы';

fl_book:=true;

end

else all:=false;

if RzCheckBox10. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'book.tirag AS Тираж';

fl_book:=true;

end

else all:=false;

if RzCheckBox12. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'Category.location AS размещение ';

fl_category:=true;

end

else all:=false;

if RzCheckBox15. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'razrabotchik.email AS Email';

fl_avtor:=true;

end

else all:=false;

if RzCheckBox13. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'avtor.SecNameAvtor AS Фамилия';

fl_avtor:=true;

end

else all:=false;

if RzCheckBox14. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'avtor.LastNameAvtor AS Фамилия';

fl_avtor:=true;

end

else all:=false;

if RzCheckBox18. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'Category.razdel AS Направление';

fl_category:=false;

end

else all:=false;

if RzCheckBox19. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'Category.discipline AS Дисциплина';

fl_category:=false;

end

else all:=false;

if RzCheckBox16. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'vid.vid AS Вид';

fl_vid:=true;

end

else all:=false;

if RzCheckBox17. Checked then

begin

if pole<>'' then pole:=pole+', ';

pole:=pole+'vid.typeizdan AS Вид';

fl_vid:=true;

end

else all:=false;

//if srtkl<>'' then sqlwhere:= ' where '+name_poisk+' LIKE: p1'

if srtkl<>'' then sqlwhere:= ' where '+name_poisk+' like: P1'

else sqlwhere:='';

if all=true then

begin

{ fl_book:=false;

fl_avtor:=false;

fl_izdat:=false;

fl_vid:=false;

fl_category:=false;}

stroka_SQL:='select * from book, avtor, izdat, vid, category '+sqlwhere

//stroka_SQL:='select * from program, razrabotchik, typePO, location, sreda, License, ucheb where program. nameprogram like: P1'+sqlwhere;

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;

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

P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P1.Name:='P1';

p1.DataType := ftstring;

if edit1. Text<>'' then begin

srtkl := edit1. Text;

name_poisk:= 'Tovar.nameTovar'

end;

if srtkl<>'' then

begin

srtkl:='%'+ srtkl+'%';

P1.Value:=srtkl;

P1.Size:=Length (srtkl);

end;

ChildTemplateForm.Label1.Caption:='Информация о товаре: '+edit1.Text;

sqlwhere:= ' where (zapas.idzapas = (select tovar. idzapas from tovar where tovar. nametovar like: P1))';

stroka_SQL:='select * from zapas'+sqlwhere ;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

end;

if nomer_poisk=2 then begin

P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P1.Name:='P1';

p1.DataType := ftdatetime;

ayear:= strtoint (Edit4.Text);

amonth:=strtoint (Edit3.Text);

aday:=strtoint (Edit2.Text);

ahour:=0;

aminute:=0;

asecond:=0;

amillisecond:=0;

timenach:=encodedatetime (Ayear, amonth, aday, ahour, aminute, asecond, amillisecond);

if edit1. Text<>'' then begin

srtkl := edit1. Text;

name_poisk:= 'Tovar.nameTovar'

end;

if srtkl<>'' then

begin

srtkl:='%'+ srtkl+'%';

P1.Value := timenach;

end;

sqlwhere:= ' where addional. srok_godnost < :P1';

stroka_SQL:='select tovar. nametovar, addional. srok_godnost from tovar, addional'+ sqlwhere;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

end;

if nomer_poisk=3 then begin

P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P1.Name:='P1';

p1.DataType := ftstring;

if edit1. Text<>'' then begin

srtkl := edit1. Text;

name_poisk:= 'Tovar.nameTovar'

end;

if srtkl<>'' then

begin

srtkl:='%'+ srtkl+'%';

P1.Value:=srtkl;

P1.Size:=Length (srtkl);

end;

sqlwhere:= ' where (location.idlocation = (select tovar. idlocation from tovar where tovar. nametovar like: P1))';

stroka_SQL:='select * from location '+sqlwhere ;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

end;

if nomer_poisk=4 then begin

P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P1.Name:='P1';

p1.DataType := ftdatetime;

ayear:= strtoint (Edit4.Text);

amonth:=strtoint (Edit3.Text);

aday:=strtoint (Edit2.Text);

ahour:=0;

aminute:=0;

asecond:=0;

amillisecond:=0;

timenach:=encodedatetime (Ayear, amonth, aday, ahour, aminute, asecond, amillisecond);

ayear:= strtoint (Edit7.Text);

amonth:=strtoint (Edit6.Text);

aday:=strtoint (Edit5.Text);

ahour:=0;

aminute:=0;

asecond:=0;

amillisecond:=0;

timekon:=encodedatetime (Ayear, amonth, aday, ahour, aminute, asecond, amillisecond);

P2 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P2.Name:='P2';

p2.DataType := ftdatetime;

P1.Value := timenach;

P2.Value := timekon;

sqlwhere:= ' where (Nakladnaya.vremya > :P1) and (nakladnaya.vremya < :P2)';

stroka_SQL:='select * from Nakladnaya'+ sqlwhere;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

end;

if nomer_poisk=5 then begin

P1 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P1.Name:='P1';

p1.DataType := ftinteger;

if edit1. Text<>'' then

begin

idnakl:=strtoint (edit1.Text);

P1.Value :=idnakl;

sqlwhere:= ' where (Nakladnaya.idNakladnaya = :P1)';

stroka_SQL:='select * from Nakladnaya'+ sqlwhere;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

kol:= mainclientsform. ADOQuery2.RecordCount;

if kol=0 then showmessage ('такого товара не существует')

else

begin

idtov:=mainclientsform.ADOQuery2.FieldByName ('idtovar').AsInteger;

kolnakl:=(mainclientsform.ADOQuery2.FieldByName ('kolichestvo').AsInteger);

priznak:=mainclientsform.ADOQuery2.FieldByName ('provodka').AsString;

if priznak='N' then begin

mainclientsform.ADOQuery2.Active:=false;

mainclientsform.ADOQuery2.SQL.Clear;

P2 :=mainclientsform.ADOQuery2.Parameters.AddParameter;

P2.Name:='P2';

p2.DataType := ftinteger;

P2.Value :=idtov;

sqlwhere:= ' where (tovar.idtovar = :P2)';

stroka_SQL:='select * from tovar'+ sqlwhere;

mainclientsform.ADOQuery2.SQL.Add (stroka_SQL);

if stroka_SQL<>'' then begin

mainclientsform.ADOQuery2.Active:=true;

mainclientsform.ADOQuery2.ExecSQL;

end;

kol:= mainclientsform. ADOQuery2.RecordCount;

if kol=0 then showmessage ('такого товара не существует')

else

begin

idzapas:=mainclientsform.ADOQuery2.FieldByName ('idZapas').AsInteger;

if idzapas=0 then showmessage ('товара нет в наличии')

else

begin

mainclientsform.ADOTable3.First;

for i:=1 to mainclientsform. ADOTable3.RecordCount do

begin

sravn:=mainclientsform.ADOTable3.FieldByName ('idZapas').AsInteger;

if sravn=idzapas then

begin

kolzapas:=mainclientsform.ADOTable3.FieldByName ('Zapas').AsInteger;

if kolnakl>kolzapas then showmessage ('такого количества товара нет в наличии')

else

begin

rezerv_kol:=mainclientsform.ADOTable3.FieldByName ('rezerv_kol').AsInteger;

if kolnakl>kolzapasrezerv_kol then

showmessage ('проводка не осуществлена — Товар зарезервирован')

else

begin

mainclientsform.ADOTable3.Edit;

mainclientsform.ADOTable3.FieldByName ('Zapas').AsInteger:=kolzapas-kolnakl;

showmessage ('проводка осуществлена УСПЕШНО!');

mainclientsform.ADOTable2.First;

for i:=1 to mainclientsform. ADOTable2.RecordCount do

begin

if idnakl= mainclientsform. ADOTable2.FieldByName ('idNakladnaya').AsInteger

then

begin

mainclientsform.ADOTable2.Edit;

mainclientsform.ADOTable2.FieldByName ('provodka').AsString:='Y';

end;

mainclientsform.ADOTable2.Next;

end;

end;

end;

end;

mainclientsform.ADOTable3.Next;

end;

end;

end;

end

else showmessage ('проводка накладной не требуется')

end;

end;

end;

end;

еnd.

Модуль DBDirectoryTemplate

unit DBDirectoryTemplate;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Grids, DBGrids;

type

TDBDirectoryTemplateForm = class (TForm)

TableDBGrid: TDBGrid;

procedure FormClose (Sender: TObject; var Action: TCloseAction);

private

{ Private declarations }

public

{ Public declarations }

end;

var

DBDirectoryTemplateForm: TDBDirectoryTemplateForm;

implementation

{$R *.dfm}

procedure TDBDirectoryTemplateForm. FormClose (Sender: TObject;

var Action: TCloseAction);

begin

Action:=caFree;

end;

end.

модуль ChildTemplate

unit ChildTemplate;

interface

uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, Buttons, Grids, DBGrids, ExtCtrls, Menus, StdCtrls;

type

TChildTemplateForm = class (TForm)

DBGrid1: TDBGrid;

Label1: TLabel;

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. FormClose (Sender: TObject;

var Action: TCloseAction);

begin

Action:=caFree;

end;

procedure TChildTemplateForm. RzToolbarButton1Click (Sender: TObject);

begin

dbgrid1.DataSource.DataSet.Insert;

end;

procedure TChildTemplateForm. RzToolbarButton2Click (Sender: TObject);

begin

dbgrid1.DataSource.DataSet.Edit;

end;

end.

Проект

Главная форма приложения MainClients

childTemplate.pas

DbdDirectoryTemplate

AddSource.pas

ParamPoisk.pas

Показать весь текст

Список литературы

  1. А.Я. 100 компонентов общего назначения библиотеки Delphi 5. — М.: Бином, 1999. — 266 с.
  2. Архангельский А.Я. Delphi 6. Справочное пособие. — М.: Бином, 2001. — 1024 с.
  3. А.Я. Программирование в Delphi 6. — М.: Бином, 2001. — 564 с.
  4. А.Я. Язык SQL в Delphi 5. — М.: Бином, 2000. — 205 с.
  5. Базы данных: модели, разработка, реализация / Карпова Т.- СПб.: Питер, 2001. -304с.
  6. А.Н. Бухгалтерский учет в учреждениях непроизводственной сферы. — М.: Финансы и статистика, 1995. — 240с.
  7. Буч Г. Объектно-ориентированное проектирование с примерами применения. М., 1992. — 654с.
  8. В. Ф. Экономика предприятия. — М.: Вита-Пресс, 1998. — 380с.
  9. В. Информационная безопасность // Открытые системы- 1996. — N 1−4.
  10. С.В., Ломотько Д. В. Базы данных .- Х.: Фолио, 2002. — 504 с.
  11. Е.П. Маркетинг: стратегии, планы, структуры. М., Дело, 1995. — 450с.
  12. Е.П. Маркетинговые исследования: теория, методология и практика. М., Финпресс, 1998. — 280с.
  13. В.Э. Хомоненко А.Д. Delphi 5. — СПб.: — Санки-Петербург, 2000. -800с.
  14. В.Э. Хомоненко А.Д. Delphi 6. — СПб.: — Санки-Петербург, 2001. -1145с.
  15. А. и др. Маркетинг. М., Экономика, 1993.
  16. В. Ц. Охрана труда пользователей компьютеров. — К.: «Освгга», 1999.- 186с.
  17. З.У. Бюджетный учет и отчетность. М.: Финансы, 1970.-215с.
  18. А. И., Войленко В. В. Маркетинговый анализ. М., Центр экономики и маркетинга, 1996.
  19. Конноли Томас, Бегг Каролин. Базы данных. Проектирование, реализация и сопровождение. Теория и практика. — М.: Вильямс, 2000. — 1111 с.
  20. Культин Н.Б. Delphi 6: Программирование на OBJECT PASCAL. — М.: Бином, 2001. — 526 с.
  21. Культин Н.Б. Delphi 7: Программирование на OBJECT PASCAL. — М.: Бином, 2003. — 535 с.
  22. Я.Р., Катышев П. К., Пересецкий А. А. Эконометрика. Начальный курс. М., Дело, 1997
  23. Маклаков С.В. BPwin и ERwin. CASE-средства разработки информационных систем. — М.: Диалог-Мифи, 2001. — 304 с.
  24. В.О. Бюджетные организации: бухгалтерский учет и налогооблажение. -Харьков: Фактор, 2001. — 566с.
  25. С. Обзор АСУП для малого бизнеса. Функциональные особенности // Компьютерное обозрение № 17 (286), 2001. с.22−27. // www. ITC-UA.COM
  26. Р., Шафер Д. Шафер Л. Управление программными проектами: достижение оптимального качества при минимуме затрат. М.: «Вильямс», 2003. — 1128с.
  27. А. Поздняков В. От бухгалтерии под Windows к открытым Unix-системам // Компьютерное обозрение № 34 (402), 2003. с.22−27. www. ITC-UA.COM
Заполнить форму текущей работой
Купить готовую работу

ИЛИ