Контроль конструкторско-технологической подготовки производства

Контроль конструкторсько-технологічної  підготовки виробництва

 

1 Постановка  задачі

 

1.1 Введення

 

Конструкторсько-технологічна підготовка виробництва є одним  з найбільш важливих аспектів роботи будь-якого машинобудівного підприємства. Від її планування залежить найбільш раціональне використання виробничих, а значить  і ефективність його роботи та можливість конкурування з іншими підприємствами галузі. На цій стадії закладаються етапи виготовлення машин і механізмів, а також строки їх реалізації. Основним документом для випуску продукції є конструкторське креслення механізму та всіх деталей і складальних одиниць, що входять до нього. На основі розробленого креслення технолог створює технологічний процес обробки різанням для деталей та складальний для складальних одиниць. При розробці нового механізму конструктор користується великою кількістю інформації — це різні довідники, галузеві стандарти, інформація про наявність того, чи іншого матеріалу на підприємстві, інформація про можливість забезпечення даних вимог креслення на існуючому на підприємстві обладнанні, креслення складальних одиниць та деталей, що входять до даного механізму та були розроблені іншими конструкторами. На основі цих креслень ним розробляються інші креслення деталей, що працюватимуть в парі з вже існуючими.

Дуже часто пошук  креслень вимагає великих сил  та часу тому, що всі вони зберігаються в архіві під спеціальними, присвоєними  їм унікальними шифрами. Тому, щоб  отримати креслення будь-якої деталі потрібно знати її шифр, вмістити в  голові такі обсяги інформації не в змозі жодна людина.

Тому я планую створити програмний продукт, який використовував би базу даних в яку були б занесені всі шифри деталей та механізмів, що існують на підприємстві. Тим  самим ця програма полегшувала б  працю конструкторів по пошуку шифрів креслень, а значить звільняла б їх від втомливої, рутинної роботи.

1.2 Актуальність

 

Таку базу можна було б містити на паперових носіях, але це викликало б додаткові  труднощі при роботі з ними тому, що вони мають великі обсяги і пошук в них будь-якої інформації займає безліч часу. Це значить, що користуватися цими записами зможуть тільки люди, які їх створювали і постійно з ними працюють. Це означає, що потрібно наймати додатковий персонал, який працював би тільки з цими документами, тому як вони будуть потрібними не тільки конструкторам, а й технологам та програмістам для верстатів з числовим програмним керуванням, а також майстрам в цехах, інженерам по інструменту та відділу технічного контролю. Тобто потрібно мати копії записів для пришвидшення доступу до них всіх працівників підприємства. Для збереження такої кількості інформації потрібні великі службові приміщення з відповідними умовами для зберігання паперу.

Виходячи з всього вище сказаного, можна виділити декілька переваг електронної бази даних, в порівнянні з паперовою:

1. Зручність при роботі  з нею;

2. Зручність в зберіганні;

3. Простота доступу;

4. Відсутність копій  (вся інформація може зберігатися  на сервері);

5. Зручність при пошуку  інформації.

 

1.3 Загальний  опис програми

 

База даних покликана  спростити доступ до інформації, зменшити час її пошуку та зменшити кількість  паперових носіїв.

Вона повинна забезпечувати  наступні потреби:

1. Видача інформації  конструкторам;

2. Видача інформація  технологам;

3. Видача інформації  програмістам для верстатів з числовим програмним керуванням.

База даних повинна  містити такі відомості:

1. Шифр механізму;

2. Назва;

3. Шифри складальних  одиниць, що входять до механізму;

4. Найменування складальних  одиниць;

5. Кількість кожної  одиниці;

6. Шифри деталей;

7. Найменування деталей;

8. Кількість кожної  деталі;

9. Вид виробу;

10. Габарити деталі  чи механізму;

11. Вагу;

12. Вид заготовки;

13. Матеріал;

14. Дату початку та  закінчення виготовлення;

15. Цех виробник;

16. Розробник креслення  чи технологічного процесу;

 

1.4 Аналоги  серед програмних продуктів

 

Для виконання поставленого завдання існує програма 1С Підприємство, але вона є не досконалою і не може забезпечити повне задоволення  потреб. Одним з її недоліків є  складність освоєння і роботи. Останньою версією цього програмного продукту є  1С Підприємство 8.

Для використання цієї програми необхідно організувати навчання персоналу. Для того, щоб користувач зміг розібратися  в механізмі стандартних звітів, йому потрібно мати хочя б знання початкового  рівня про те, як зберігаються дані в 1С, про те, що таке регістри, про те, як проводяться документи, що при цьому відбувається, тобто для роботи з 1С необхідний більш кваліфікований персонал.

Також потрібна наявність  програмістів, які будуть допрацьовувати програму в процесі її використання. При замовленні програмування 1С в офіційних поставників, чи сторонніх розробників це потребуватиме достатньо великих грошових затрат. Доробка програми обумовлена тим, що базова комплектація не завжди відповідає конкретним вимогам окремого підприємства.

З-за орієнтації програми на виконання широкого кола завдань, можливе використання її потенціалу не в повній мірі навіть при використанні стандартної комплектації. Також  складність у використанні представляє  те, що при виникненні помилки у введенні даних в батьківській таблиці бази даних (БД) вона відображається в нащадках і усунення її викликає складнощі. При коригуванні такого запису в батьківській таблиці зміни не завжди відображаються в нащадках. Для повного усунення невірного запису необхідно видалити всі входження помилкових даних, після чого відредагувати початкову таблицю і заново внести дані в таблиці нащадки.

При роботі з ліцензованою програмою для захисту вона використовує ключ, що вставляється в LPT порт. Цей  ключ інколи викликає проблеми при роботі програми з принтером, програма не бачить його. Також цей ключ може вийти з ладу і хоча розробники замінюють його безкоштовно, та це потребує часу і може викликати незручності з-за неможливості доступу до даних.

В 1С Підприємство достатньо складні налаштування і часто користувачі не в змозі самостійно виконати потрібні налаштування і доводиться з звертатися за допомогою до програмістів. Також інколи виникають конфлікти з встановленим програмним забезпеченням, а при встановленні обновлень програми можуть втрачатися старі налаштування і програму треба переналагоджувати.

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

Ще одним недоліком  програми є висока вартість одного робочого місця (400 грн. базова версія). При цьому в сітьовій версії вам  буде потрібно платити за кожне робоче місце. Це значить, що не кожне підприємство може її придбати і встановити в необхідному обсязі.

Також для виконання  поставленого завдання можливе використання програмного продукту Microsoft Office Access. Використовуючи його можна розробити  БД, яка буде повністю задовольняти потребам підприємства. Але її використання веде за собою додаткові складності на стадії розробки, а значить підвищення вартості кінцевого продукту і збільшення терміну розробки. При використанні Microsoft Office Access ускладнюється розробка БД, якщо існує необхідність складної розгалуженої програми, також з'являється проблема в організації прав доступу до інформації, а також в її захисті в уже готовій базі. Це є неприпустимим, тому що одним з основних завдань БД є не тільки зберігання, але й захист даних від несанкціонованого доступу, що в свою чергу може призвести до збитків компанії.

Виходячи з усього вище сказаного, доцільним є створення  програми здатної повністю задовольнити потреби підприємства, при цьому  бути простою у використанні і  забезпечувати надійний захист даних.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

2 Розробка  структури БД та її нормалізація

 

2.1 Проектування  структури БД

 

Для розробки програми необхідно  визначити, які данні вона повинна  містити, для цього необхідно  описати та занести до однієї спільної таблиці всі данні що будуть опрацьовуватися програмою. Розширимо відомості потрібні для розробки БД, що описані в попередній главі.

Таблиця з даними, що оброблюватиме  програма:

1. Шифр;

2. Назва;

3. Тип виробу (деталь, складальна одиниця);

4. Шифр механізму до  якого входить;

5. Щорічний випуск;

6. Кількість;

7. Розробник креслення;

8. Шифр технологічного  процесу (ТП).

9. Шифр креслення;

10. Назва;

11. Шифр ТП;

12. Розробник ТП.

13. Тип виробу (деталь, складальна одиниця);

14. Габарити;

15. Вага;

16. Вид заготовки (прокат круглий, квадратний, листовий, відливка, штамповка);

17. Матеріал;

18. Дата початку виготовлення;

19. Дата завершення  виготовлення;

20. Цех виробник.

21. Ф.І.П розробника;

22. Категорія;

23. Відділ;

24. Домашня адреса;

25. Телефон;

26. Початок робочого  дня;

27. Кінець робочого  дня;

28. Дата початку відпустки;

29. Дата завершення  відпустки.

Такі дані, як посада, категорія, відділ цех виробник та тип  виробу і вид заготовки є складними  даними, які є постійними й не змінюються в процесі роботи програми. Тому їх доцільно містити в програмі в вигляді списку можливих варіантів для вибору.

  Такі данні, як інформація про розробника (конструктора, або технолога) містять однакові дані і є дублюючими, тому для них доцільно виділити окрему таблицю в якій вказувати посаду співробітника. Також потрібно виділити в окремі таблиці данні про деталі та складальні одиниці (механізми), тому як вони представляють різні типи виробів.

Виходячи з всього вище сказаного можна виділити наступні таблиці, що будуть використовуватися  в програмі:

 

Інформація про механізм чи складальну одиницю:

1. Шифр;

2. Назва;

3. Механізм предок;

4. Щорічний випуск;

5. Кількість;

6. Розробник креслення;

7. Шифр технологічного  процесу (ТП);

8. Габарити;

9. Вага.

10. Дата початку виготовлення;

11. Дата завершення виготовлення;

12. Цех виробник.

 

Інформація про деталі:

1. Шифр;

2. Назва;

3. Щорічний випуск;

4. Кількість;

5. Розробник креслення;

6. Шифр технологічного  процесу (ТП).

7. Габарити;

8. Вага;

9. Вид заготовки (прокат  круглий, квадратний, листовий, відливка, штамповка);

10. Матеріал;

11. Дата початку виготовлення;

12. Дата завершення  виготовлення;

13. Цех виробник.

 

Інформація про розробника (креслення чи ТП):

1. Ф.І.П;

2. Посада;

3. Категорія;

4. Відділ;

5. Домашня адреса;

6. Телефон;

7. Початок робочого дня;

8. Кінець робочого  дня;

9. Дата початку відпустки;

10. Дата завершення  відпустки.

 

Видно, що таблиці: “Інформація  про механізм чи складальну одиницю” та “Інформація про деталі” містять  дублюючи один одного данні, тому доцільним  буде виділити з них ці дані і занести їх в окрему таблицю “Інформація про виріб”, що буде спільною для них.

 

Інформація про виріб:

1. Шифр;

2. Назва;

3. Тип виробу (деталь, складальна одиниця);

4. Шифр механізму до  якого входить;

6. Щорічний випуск;

7. Кількість;

8. Розробник креслення;

9. Шифр технологічного  процесу.

 

Інші дані, що стосуються окремо деталей чи складальних одиниць  є суто технологічним тому для  них виділена окрема таблиця “Відомості про ТП”.

 

Відомості про ТП:

1. Шифр креслення;

2. Назва;

3. Шифр ТП;

4. Розробник ТП.

5. Тип виробу (деталь, складальна одиниця);

6. Габарити;

7. Вага;

8. Вид заготовки (прокат  круглий, квадратний, листовий, відливка, штамповка);

9. Матеріал;

10. Дата початку виготовлення;

11. Дата завершення  виготовлення;

12. Цех виробник.

 

Після групування даних в окремі таблиці та виключення дублюючих отримуємо такі таблиці основні таблиці бази даних: “Інформація про виріб”, “Відомості про ТП” та “Інформація про розробника”.

 

Інформація про виріб:

1. Шифр;

2. Назва;

3. Тип виробу (деталь, складальна одиниця);

4. Шифр механізму до  якого входить;

6. Щорічний випуск;

7. Кількість;

8. Розробник креслення;

9. Шифр технологічного  процесу.

 

Відомості про ТП:

1. Шифр креслення;

2. Назва;

3. Шифр ТП;

4. Розробник ТП.

5. Тип виробу (деталь, складальна одиниця);

6. Габарити;

7. Вага;

8. Вид заготовки (прокат  круглий, квадратний, листовий, відливка, штамповка);

9. Матеріал;

10. Дата початку виготовлення;

11. Дата завершення  виготовлення;

12. Цех виробник.

 

Інформація про розробника (креслення чи ТП):

1. Ф.І.П;

2. Посада;

3. Категорія;

4. Відділ;

5. Домашня адреса;

6. Телефон;

7. Початок робочого  дня;

8. Кінець робочого  дня;

9. Дата початку відпустки;

10. Дата завершення  відпустки.

 

Для даних: посада, категорія, відділ і телефон, цех виробник та тип виробу і вид заготовки доцільно створити  окремі таблиці.

Отже база даних буде складатися з 10 таблиці, три з яких є основними, а інші допоміжні.

 

2.2 Проектування  структури окремих таблиць

 

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

 

Таблиця Izdelie:

1. Shifr – A15 (ключ);

2. Name – A15;

3. Type – I;

4. Predok – A15;

5. Vipusk – I;

6. Col – I;

7. Emploer – I;

8. TP – A15.

 

Таблиця TP:

1. TP – A15 (ключ);

2. Name  A15;

3. Emploer – I;

4. Gabarit – A7;

5. Mass – I;

6. Zagotovka – I;

7. Material – I;

8. Start_Izgot – D;

9. End_Izgot – D;

10. Ceh – I.

 

Таблиця Emploer:

1. ID_Emploer - личильник (ключ);

2. FIO – A25;

3. Dlzn – I;

4. Kategory – I;

5. Otdel – I;

6. Adress – A20;

7. Work_Tel – A14;

8. Start_Day – T;

9. End_Day - T;

10. Start_Otpusk – D;

11. End_Otpusk – D.

 

Таблиця  Ceh:

1. ID_Ceh – личильник (ключ);

2. Number – S.

 

Таблиця  Dolzn:

1. ID_Dolzn – личильник (ключ);

2. Name – A11.

 

Таблиця  Kategory:

1. ID_Kategory – личильник (ключ);

2. Name – A3.

Таблиця Otdel:

1. ID_Otdel – личильник (ключ);

2. Name – A12.

 

Таблиця Material:

1. ID_Material – личильник (ключ);

2. Name – A12.

 

Таблиця Type_Izdelia:

1. ID_Type – личильник (ключ);

2. Type – A3.

 

Таблиця Zagotovka:

1. ID_Zagotovka – личильник (ключ);

2. Name – A15.

 

Таблиці Izdelie та TP зв’язані між собою по полям TP. Таблиці Izdelie та Emploer – полями Emploer та ID_Emploer, а поле Type використовується для зв’язку з таблицею Type_Izdelia за її ключовим полем за допомогою властивості LookUp компоненту TTable середовища Delphi.

Таблиці TP та Emploer зв’язані між собою по полям Emploer та ID_Emploer, поля Zagotovka, Material та Ceh служать для організації зв’язку з таблицями Zagotovka, Material та Ceh за їх ключовими полями методом LookUp.

В таблиці Emploer поля Dlzn, Kategory та Otdel використовуються для зв’язку з таблицями Dolzn, Kategory та Otdel за їх ключовими полями методом LookUp.

На рисунку 2.1 схематично зображений зв'язок таблиць.

 

Рисунок 2.1 – Зв'язок таблиць

 

3 Розробка  основних модулів програми та  графічного інтерфейсу

 

При розробці програми в  середовищі Delphi був організований зв'язок таблиць та розроблений графічний інтерфейс, що складається з декількох вікон програми, що дають можливість користувачеві легко орієнтуватися в інформації, яку містить програма. Розглянемо головне вікно програми, що зображено на рисунку 3.1.

 

Рисунок 3.1 – Головне  вікно програми

 

При розробці головного  вікна програми були змінені властивості  деяких компонентів, їх перелік можна  знайти в таблиці 3.1.

 

Таблиця 3.1 – Властивості  компонентів

Назва компоненту

Властивість

Значення

DBG_Izdel

Align

alClient

DataSourse

DS_Izdelie

PopupMenu

PM

DBG_Izd_Emp

Align

alClient

DataSourse

DS_Emploer

dgGoEditing

False

DBG_TP

Align

alClient

DataSourse

DS_TP

dgGoEditing

False

DBG_TP_Empl

Align

alClient

DataSourse

DS_EMploer_TP

dgGoEditing

False


 

На рисунку 3.2 зображено  вікно Object TreeView з переліком усіх компонентів, що розташовані на формі.

 

Рисунок 3.2 – Вікно Object TreeView

 

Код модуля MainKTP головного  вікна програми наведений в листингу 3.1.

Листинг 3.1 – Код модуля MainKTP

 

unit MainKTP;

interface

uses

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

  Dialogs, DB, DBTables, ExtCtrls, DBCtrls, Grids, DBGrids, ComCtrls,

  ToolWin, Menus;

type

  TCheckKTP = class(TForm)

    MMenu: TMainMenu;

    MFile: TMenuItem;

    MEdit: TMenuItem;

   MSpr: TMenuItem;

    MAbout: TMenuItem;

    N5: TMenuItem;

    MExit: TMenuItem;

    KTP_StBar: TStatusBar;

    PC_Izdel: TPageControl;

    DS_Izdelie: TDataSource;

    Izdelie: TTable;

    DS_TP: TDataSource;

    DS_Emploer: TDataSource;

    Emploer: TTable;

    Emploer_TP: TTable;

    DS_EMploer_TP: TDataSource;

    TP: TTable;

    Type_Izdel: TTable;

    IzdelieShifr: TStringField;

    IzdelieName: TStringField;

    IzdelieType: TIntegerField;

    IzdeliePredok: TStringField;

    IzdelieVipusk: TIntegerField;

    IzdelieCol: TIntegerField;

    IzdelieEmploer: TIntegerField;

    IzdelieTP: TStringField;

    IzdelieType_izdel: TStringField;

    EmploerID_Emploer: TAutoIncField;

    EmploerFIO: TStringField;

    EmploerDlzn: TIntegerField;

    EmploerKategory: TIntegerField;

    EmploerOtdel: TIntegerField;

    EmploerAdress: TStringField;

    EmploerWork_Tel: TStringField;

    EmploerStart_Day: TTimeField;

    EmploerEnd_Day: TTimeField;

    EmploerStart_Otpusk: TDateField;

    EmploerEnd_Otpusk: TDateField;

    Ceh: TTable;

    Dolzn: TTable;

    Kategory: TTable;

    Material: TTable;

    Otdel: TTable;

    EmploerDolz: TStringField;

    EmploerKateg: TStringField;

    EmploerOtd: TStringField;

    TPTP: TStringField;

    TPName: TStringField;

    TPEmploer: TIntegerField;

    TPGabarit: TStringField;

    TPMass: TIntegerField;

    TPZagotovka: TIntegerField;

    TPMaterial: TIntegerField;

    TPStart_Izgot: TDateField;

    TPEnd_Izgot: TDateField;

    TPCeh: TIntegerField;

    Zagotovka: TTable;

    TPZagot: TStringField;

    TPMater: TStringField;

    TPCeh_Name: TIntegerField;

    Emploer_TPID_Emploer: TAutoIncField;

    Emploer_TPDlzn: TIntegerField;

    Emploer_TPKategory: TIntegerField;

    Emploer_TPOtdel: TIntegerField;

    Emploer_TPAdress: TStringField;

    Emploer_TPWork_Tel: TStringField;

    Emploer_TPStart_Day: TTimeField;

    Emploer_TPEnd_Day: TTimeField;

    Emploer_TPStart_Otpusk: TDateField;

    Emploer_TPEnd_Otpusk: TDateField;

    Emploer_TPFIO: TStringField;

    PC_TP: TPageControl;

    TS_TP: TTabSheet;

    KTP_Split: TSplitter;

    DBG_TP: TDBGrid;

    TS_TP_Empl: TTabSheet;

    DBG_TP_Empl: TDBGrid;

    Emploer_TPDolz: TStringField;

    Emploer_TPKateg: TStringField;

    Emploer_TPOtd: TStringField;

    TS_Izd_Empl: TTabSheet;

    DBG_Izd_Empl: TDBGrid;

    TS_Izdel: TTabSheet;

    DBG_Izdel: TDBGrid;

    MTP: TMenuItem;

    MTSpisky: TMenuItem;

    Type_IzdelID_Type: TAutoIncField;

    Type_IzdelType2: TStringField;

    DolznID_Dolznost: TAutoIncField;

    DolznName: TStringField;

    KategoryID_Kategory: TAutoIncField;

    KategoryName: TStringField;

    MaterialID_Material: TAutoIncField;

    MaterialName: TStringField;

    OtdelID_Otdel: TAutoIncField;

    OtdelName: TStringField;

    ZagotovkaID_Zagot: TAutoIncField;

    ZagotovkaName: TStringField;

    CehID_Ceh: TAutoIncField;

    CehNumber: TSmallintField;

    PM: TPopupMenu;

    PMSerch: TMenuItem;

    PMNew: TMenuItem;

    PMApply: TMenuItem;

    PMDelete: TMenuItem;

    MTEmpl: TMenuItem;

    N1: TMenuItem;

    TblEmpl: TTable;

    TPEmp: TStringField;

    TblTP: TTable;

    TblTPTP: TStringField;

    TblTPName: TStringField;

    TblTPEmploer: TIntegerField;

    TblTPGabarit: TStringField;

    TblTPMass: TIntegerField;

    TblTPZagotovka: TIntegerField;

    TblTPMaterial: TIntegerField;

    TblTPStart_Izgot: TDateField;

    TblTPEnd_Izgot: TDateField;

    TblTPCeh: TIntegerField;

    TblTPZagot: TStringField;

    TblTPMater: TStringField;

    TblTPCeh_Name: TIntegerField;

    TblTPEmpl: TStringField;

    TblEmplID_Emploer: TAutoIncField;

    TblEmplFIO: TStringField;

    TblEmplDlzn: TIntegerField;

    TblEmplKategory: TIntegerField;

    TblEmplOtdel: TIntegerField;

    TblEmplAdress: TStringField;

    TblEmplWork_Tel: TStringField;

    TblEmplStart_Day: TTimeField;

    TblEmplEnd_Day: TTimeField;

    TblEmplStart_Otpusk: TDateField;

    TblEmplEnd_Otpusk: TDateField;

    TblEmplDolz: TStringField;

    TblEmplKateg: TStringField;

    TblEmplOtd: TStringField;

    IzdelieTP_Name: TStringField;

    IzdelieEmpl: TStringField;

    N3: TMenuItem;

    procedure MExitClick(Sender: TObject);

    procedure MAboutClick(Sender: TObject);

    procedure MTPClick(Sender: TObject);

    procedure MTSpiskyClick(Sender: TObject);

    procedure PMSerchClick(Sender: TObject);

    procedure PMDeleteClick(Sender: TObject);

    procedure PMNewClick(Sender: TObject);

    procedure PMApplyClick(Sender: TObject);

    procedure MTEmplClick(Sender: TObject);

    procedure FormShow(Sender: TObject);

  private

    { Private declarations }

    procedure Hint(Sender: TObject); // Подсказки

    procedure TablesOn;              // Відключити відображення даних в таблицях

    procedure TablesOff;             // Включити відображення даних в таблицях

  public

    { Public declarations }

  end;

var

  CheckKTP: TCheckKTP;

implementation

uses TP, Empl, AllEdit,Serch, AboutKTP;

{$R *.dfm}

 

// Включити відображення даних  в таблицях

procedure TCheckKTP.TablesOn;

begin

  Izdelie.Active := True;

  Emploer.Active := True;

  TP.Active := True;

  Emploer_TP.Active := True;

end;

 

// Відключити відображення даних  в таблицях

procedure TCheckKTP.TablesOff;

begin

  Izdelie.Active := False;

  Emploer.Active := False;

  TP.Active := False;

  Emploer_TP.Active := False;

end;

 

// Вихід з програми

procedure TCheckKTP.MExitClick(Sender: TObject);

begin

  Application.Terminate;

end;

 

// О програмі

procedure TCheckKTP.MAboutClick(Sender: TObject);

begin

  AboutBox.ShowModal;

end;

 

// Редагування списку ТП

procedure TCheckKTP.MTPClick(Sender: TObject);

begin

  TablesOff;

  TPFrm.ShowModal;

  TablesOn;

end;

 

// Редагування додаткових списків

procedure TCheckKTP.MTSpiskyClick(Sender: TObject);

begin

  TablesOff;

  FrmAllEdit.ShowModal;

  TablesOn;

end;

 

// Пошук в списки креслень

procedure TCheckKTP.PMSerchClick(Sender: TObject);

begin

  // Заповнити дані в пошуковій формі

  FrmSerch.CBSerch.Items.Clear;

Контроль конструкторско-технологической подготовки производства