10.01.2002********************************************************** 1.Измелась зона выбора элементов в форме "Выбор и расчёт Окна\Двери". 1.1. У всех полей со списком появилась колонка с кратким наименованием выбираемого элемента. Например подоконник L20. Чтобы при выборе этого элемента было видно кроме артикула и его наименование, надо в файл BriefChr добавить запись: Code=L20, Name=краткое наименование, например: Подоконник 20мм 1.2. Выбор штапика. Теперь 4 списка вместо 2х. Добавлены : штапик для сэндвича в раме и штапик для сэндвича в створке. Для того, чтобы эта возможность работала надо откорректировать список AdmStp=... с учётом используемых сэндвичей (их толщин) по аналогии со стеклопакетами. Толщина сэндвича задаётся в поле Const файла Elements (W=xx). Список AdmStp=... задаётся в файле prf_.... 1.3. Появилась возможность выбора цвета стёкол. Список цветов для конкретного типа стекла задаётся параметром Color=... в поле DopEl файла Elements (записи Num=160). Например: Стекло 4мм - G4 тогда Elm: G4 ,Const: W=4, DopEl: Color=,WT,GR,RD Список будет выглядеть: пусто WT GR RD При выборе пусто стекло G4 при выборе WT стекло G4WT и т.д. 1.4. Изменился алгоритм составления списка дистанционных рамок Этот список теперь изменяется при изменении толщины стеклопакета, его камерности, выборе стёкол. Для обеспечения этого алгоритма вводится новое ключевое слово Constr=... в записях Spacer_NN_N файла Elements (поле DopEl) Например раньше было: Elm: SP15B, Const: Wstp=24;Nkm=1;S=52.5, DopEl: Angle=COR15 теперь: Elm: SP15B, Const: Wstp=24;Nkm=1;S=52.5, DopEl: Angle=COR15;Constr=4+16+4 указыват что данная дист.рамка включается в список, если стеклопакет 24мм, однокамерный и стёкла с двух сторон 4мм!!! Если Constr=... отсутствует (как раньше), дист.рамка включается в список если стеклопакет 24мм, однокамерный, а стёкла любые!!! 2. В форме "Выбор элемента заполнения" при выборе типа створки появилась кнопка + , в центре комбинации кнопок, характеризирующих схему открывания. Она означает, что створка не открывающаяся ("глухая"). 3. В форме "Выбор элемента заполнения" при выборе вида створки появился CheckBox - "качающаяся створка". Характеристика створки для включения дополнительных элементов - SW. Для ключевого слова - #STV_D или #STV_W. 20.01.2002 *********************************************************** 1.Изменился алгоритм расчёта стеклопакетов для предприятий, у которых нет линии раскроя стекла и которые заказывают стеклопакеты на стороне. Для этого: 1.1 В файле ...\Spr\Spr_fn для записи Kod=CALCLSTP поле Prizn=CALCULST 1.2 В описании профиля (...\Spr\prf_...) в записи с Num=60 в поле DopEl прописываем допустимые стеклопакеты - AdmStp=24,32 1.3 В файле ...\Spr\Elements создаём записи, характеризующие список допустимых стеклопакетов (поле Num=160 - описание стеклопакетов). Желательно артикул стеклопакета (поле Elm) сделать таким, чтобы было наглядно видно толщину и камерность стеклопакета, например: STP241 - однокамерный стеклопакет, толщиной 24мм STP242 - двухкамерный стеклопакет, толщиной 24мм STP321 - однокамерный стеклопакет, толщиной 32мм STP322 - двухкамерный стеклопакет, толщиной 32мм STP323 - тёрхкамерный стеклопакет, толщиной 32мм и т.д. В поле Const обязательно(!) прописать толщину стеклопакета и камерность в виде W=nn.m, где nn - толщина стеклопакета m - камерность Для приведённого выше примера поле Const будет выглядеть STP241 W=24.1 STP242 W=24.2 STP321 W=32.1 STP322 W=32.2 STP323 W=32.3 Для создания множества стеклопакетов данной толщины и камерности можно либо создать несколько записей с одинаковыми W=nn.m и разными артикулами либо воспользоваться ключевым словом Color= в поле DopEl или то и другое одновременно. Например предприятие-изготовитель стеклопакетов предлагает стеклопакеты 24.1 простые, с аргоновым заполнением, с бронированным стеклом, с триплекс стеклом, с тонированным стеклом,с низкоэмиссионным стеклом и т.д. Тогда: Num Elm Def Const DopEl ----------------------------------------- 160 STP241 * W=24.1 Color=,BR,TRP,TON,NEM 160 STPARG241 W=24.1 Color=,BR,TON,TON,NEM ----------------------------------------- Здесь * - означает выбор по умолчанию В этом случае, если Вы устанавливаете при компановке изделия стеклопакет 24.1, система предлагает для выбора два стеклопакета (STP241,STPARG241), а справа возможность уточнения (пусто,BR,TRP,TON,NEM) Если Вы выбираете STP241 и пусто, система в качестве артикула стеклопакета принимает STP241. Если STPARG241 и TON, то - STPARG241TON. И производит расчёт стоимости стеклопакета исходя из цены за м2, прописанной в классификаторе материалов по артикулу STP241 или STPARG241TON. Естественно эту проблему можно решить и другой комбинацией!!! 1.4 Внести в классификатор материалов артикулы стеклопакетов (все возможные комбинации!!!) с заполнением всех полей. Цену за м2 проставить исходя из прайс-листов предприятия-изготовителя стеклопакетов. 2.Добавлена кнопка в форму "Выбор и расчёт Окна\Двери", обеспечивающая формирование надписи в эскизе изделия. Например необходимо уточнить что эскиз составлен с учётом "вида из помещения". Нажмите на эту кнопку, справа появится текстовое поле, введите необходимый текст, и снова нажмите на кнопку, текстовое поле изчезнет. В результате на эскизе изделия в левом верхнем углу появится надпись. 3.В описании фурнитуры (файлы ...\Spr\fur_...) добавлена возможность расчёта количества элементов как функции от размера створки (высота,ширина). (По аналогии с включением дополнительных элементов!) Например Вы хотите включить для створки петли (артикул LOOP) с шагом 1000мм по высоте створки, но их минимальное количество = 2. Тогда включите запись у которой поле Cod : LOOP, a поле Cod1 : =EV(1+CEILING(H/1000)) Здесь CEILING() - функция возвращает наименьшее целое, которое больше или равно выражению в скобках, H - текущая высота створки. Или Cod : ELXX, Cod1 : =EV(INT(2*(H+W)/100)), в этом случае система включит в расчёт элемент ELXX в количестве равном периметру створки делённое на шаг 100мм. Здесь INT() - функция возвращает целое число. 4.Добавлен новый класс изделий - простая арка 5.Расширено поле Set в файлах ...\Intent\zSpec_rs, ...\Zakaz\Spec_rs Set Character 70 6.В систему добавлено средство хранения копий документов, образующихся при передаче нарядов в производство и добавлена операция для печати этих копий (см. пункт меню: Исполнение заказа\Печать копии нарядов, переданных ранее в производство) Это обеспечивает возможность печати нарядов без списания материалов со склада при их потере или по другим причинам. Если Вы не используете возможность учёта расхода материалов по складу это средство можно не использовать (просто повторить операцию передачи нарядов в производство для получения потерянных документов), в противном случае эту операцию нельзя повторить дважды, т.к. при выполнении операции передачи нарядов в производство происходит автоматическое списание материалов со склада. Для обеспечения этого средства в папку ...\Zakaz добавлен файл Dress_wk, следущей структуры: ---------------------- Name Type Width ---------------------- Dtwk Date 8 Npp Character 3 Ndres Character 30 Instr Memo 4 ---------------------- структура индекса --------------------------------- Name Type Expression --------------------------------- COMB Regular DTOC(Dtwk,1)+Npp --------------------------------- 30.01.2002 *********************************************************** 1.В форме "Просмотр и редактирование заказов, находящихся в очереди на регистрацию" добавлена кнопка "сортировка и фильтрация заказов", позволяющая изменить порядок сортировки заказов в окне просмотра, а также установить фильтр по двум критериям : менеджер, зарегистрирующий заказ и\или заказчик. 2.В файл ...\Spr\Emploes.dbf (файл сотрудников) добавлено новое поле (между Fio,Title) Categ C(2) - характеризующее категорию сотрудника. Допустимые значения: 01-руководство 02-менеджер 03-технолог 04-установщик 05-замерщик Включение этого поля обеспечивает сокращение поиска сотрудника при установке ответственного за данную работу. (уменьшается скроллинг по записям). При этом изменилась форма установки ответственного за... 3.В форме "Перерасчёт текущих остатков по факту оприходования" добавлен CheckBox "удалить документы, включённые в расчёт", обеспечивающий сохранение или удаление документов, включённых в перерасчёт стоимости материалов в связи с новым поступлением. Этот CheckBox используется только при выполнениии реального перерасчёта, при моделировании он не используется. "Галочка" - означает удаление документов после перерасчёта, отсутствие - документы сохранены. 07.02.2002 *********************************************************** 1. В форме расчёта Прайс-листов добавлен CheckBox 'показать стоимость в рублях', который позволяет либо показать стоимость изделия в рублях либо нет. По умолчанию оставлено как было раньше. 2. При создании сложных изделий (треугольник, трапеция, и т.д.) обеспечена возможность создания вырожденных многоугольников, что позволяет расширить возможности системы в части расчёта нестандартных изделий. 20.03.2002 *********************************************************** 1. В систему добавлена возможность редактирования отдельных изделий в заказе, находящемся в очереди на регистрацию. С этой целью в форму "Просмотр и редактирование заков, находящихся в очереди на регистрацию" добавлена кнопка "редактировать изделие", которая обеспечивает редактирование отдельных изделий, а также секций в балконных блоках и витражах. Внимание! Пока не изменяются эскизы балконных блоков и витражей, а стоимость пересчитывается. Важно!!! В связи с обеспечением этой возможности (надо запомнить конфигурацию изделия на стадии первоначального создания) изменена структура двух Dbf-файлов: - ...\Intent\zProduct - ...\Zakaz\Product , а именно, в конец (после поля rem Memo) надо добавь одно поле: descrizd Memo 2. В систему добавлена возможность выбора городов и улиц при регистрации заказчика Для обеспечения этой возможности в Dbf-файл ...Spr\Spr_fn добавляются след.записи: -(список городов) поле Kod ADTOWN00, поле Naim <список городов через символ ';'> например : г.Адлер; г.Анадырь; г.Анапа; г.Балабаново; г.Караганда; -(список улиц) поле Kod ADSTREET, поле Naim <список городов через символ ';'> например : ул.Адлеровская; ул.Морская; ул.Первомайская; Делается это автоматически при добавлении новых городов и улиц в форме "Регистрация заказчика", но можно это сделать и в ручную через средство редактирования Dbf-файлов. 3. Изменена стратегия получения спецификации на изделие. Теперь эта кнопка доступна не только менеджеру с "правами", но и менеджеру без "прав". Разница лишь в том, что менеджеру с "правами" выводится спецификация со стоимостью, а менеджеру без "прав" стоимость "подавляется". 4. Добавлено средство получения спецификации на заказ в целом. Для этого в формы "Просмотр состояния зарегистрированных заказов", "Просмотр и редактирование заков, находящихся в очереди на регистрацию" добавлена кнопка "спецификация на заказ" 5. Добавлена возможность к данному спейсеру "прилепить" близкие стёкла (через запятую), например Constr=4+16+4,5+16+4,6+16+4 См. Dbf-файл ...Spr\Elements 6. В систему добавлена возможность выбирать устройства для вывода документов. Для этого в пункт меню "Сервис" добавлена опция настройки принтера "Установка принтера". Принята следущая схема: - при входе в систему в качестве "текущего" принтера выбирается принтер, установленный по умолчанию в Windows; - Вы можете изменить "текущий" принтер (а также изменить его свойства!), используя опцию Сервис\Установка принтера. В этом случае "текущим" принтером будет являться принтер, установленный Вами. До следующей переустановки или выхода из системы; - Поскольку в системе существует три разновидности кнопок для вывода документов, то и поведение системы будет различна: а. кнопка вывода документа в окно просмотра Если Вы в окне просмотра нажмёте кнопку "печатать", то он будет направлен на "текущий" принтер; b. кнопка вывода документа на принтер Система попросит Вас уточнить, на какой именно принтер Вы хотите направить документ, а также указать интервал страниц и количество копий (по аналогии с WinWord-ом); c. кнопка вывода документа в окно просмотра или на принтер Система попросит Вас уточнить куда именно Вы хотите направить документ. Если в окно просмотра, Вы можете установить принтер, на который будет направлен документ, при нажатии кнопки "печатать" в окне просмотра. Если на принтер, то действия аналогичны пункту . Важно! Изменения, выполненные здесь не влияют на установки "текущего" принтера! 25.10.2002 *********************************************************** 1. В системе введено понятие : комбинированный элемент Это элемент, состоящий из нескольких артикулов В файл спецификации выводится вместо этого элемента некая комбинация материалов, прописанная в комбинированном элементе. - для файлов prf_... и Elements - это записи Num=58 Например Num=58, Elm=%123456, DopEl=ElmA+(ElmB+ElmC)x2+ElmDx6 Символ % - обязателен! Остальное не важно. (записи выводятся в курсор wCombElm) В этом случае при появлении %123456 - n шт., в файл спецификации будет выведено: ElmA - n шт., ElmB - 2xn шт., ElmC - 2xn шт., ElmD - 6xn шт. - для файлов fur_... - это записи Type=ZCOMBELM (записи выводятся в курсор CurFurCmb) В поле Cod прописывается код комбинированного элемента, в полях Cod1,Cod2,...,Cod9 прописываются артикулы замещения, в полях N1,N2,...,N9 прописываются соответствующие количества. ************************************************************************** В систему добавлена новая операция ...\Сервис\Копирование, контроль и восстановление Базы данных. В процессе работы операционной системы и программ Wintechnology возможны аварийные ситуации, возникающие как по техническим (сбой в питании, недостаточная скорость сетевых устройств, ...) так и по "человеческим" причинам (ошибки в программах, невнимательность персонала, ...) Результатом таких неприятных моментов может быть "разрушение" Базы данных. Данная операция позволяет восстановить повреждённые файлы Базы данных конечно с определённой долей вероятности. Гарантировать 100-процентное восстановление нельзя, но наиболее часто возникающие причины "разрушения" Базы данных можно ликвидировать. Кроме того эта операция может создавать копии Базы данных и выполнять логический контроль информации по заказам, зарегистрированным в Базе данных. Поэтому ежедневное (например в начале или в конце дня) выполнение данной операции уменьшит Вам "головную боль" по поводу сохранности Базы данных. *************************************************************************** В систему добавлена новая операция ...\Сервис\Загрузка Базы данных. Основное назначение - восстановить систему после вынужденной переинсталяции, связанной с переустановкой операционной системы или других аварийных событий. Поскольку инсталяция Wintechnology выполняется с дистрибутива, полученного пользователем от разработчика на этапе начала переговоров о поставке системы или "скаченного" с веб-сайта, то естественно структура файлов и их наполнение могут существенно отличаться от последней редакции программных модулей системы. Даже если эти изменения несущественны, всё равно пользователь к текущему моменту мог произвести достаточное количество изменений в справочниках системы и самое главное не хочется терять накопленную базу по клиентам и выполненным заказам. Конечно это можно устранить и при помощи простого замещения (с использованием Проводника) соответствующих папок в корневом каталоге системы из хранилища копий. Однако использование этой операции не требует дополнительных знаний операционной системы. Основное требование для выполнения данной операции - наличие копии Базы данных. *************************************************************************** Для обеспечения автоматического подбора списка гаммы профилей и фурнитуры при выборе типа расчитываемого изделия в системе добавлена следующая возможность. Как известно в Dbf-файле ...\Spr\Spr_fn прописывается весь список используемых на Вашем предприятии гаммы профилей и фурнитуры, причём каждому из этого списка присваивается определённый символьный код. Например (чисто условно!): - для гаммы профилей: T62 - Гамма профилей Tryba 707W - Гамма профилей KBE 306D - Гамма профилей KBE TRC900 - Гамма профилей Trocal WP550 - Гамма профилей WeltPlast Каждая гамма из этого списка имет своё описание, которое хранится в соответствующем Dbf-файле ...\Spr\prf_<код гаммы> ...\Spr\prf_T62, ...\Spr\prf_707W, и т.д. - для фурнитуры: ROTOW - сборка фурнитуры ROTO для окон ROTOD - сборка фурнитуры ROTO для дверей MACO - сборка фурнитуры MACO для окон и дверей DRH - сборка фурнитуры DrHammer для входных групп Каждая сборка из этого списка имет своё описание, которое хранится в соответствующем Dbf-файле ...\Spr\fur_<код сборки> ...\Spr\fur_ROTOW, ...\Spr\fur_ROTOD, и т.д. Раньше список используемых гамм профилей прописывался с в ...\Spr\Spr_fn в строках Kod=GM000001 простым перечислением: Naim=T62;707W;306D;TRC900; ... Сборки фурнитуры соответственно в строках Kod=FN000001 Naim=ROTOW;ROTOD; ... Теперь каждый элемент из этих списков прописывается в отдельной строке Kod=GM000001 Naim=T62 : Наименование на ваш вкус Prizn=TTTMMSSS Kod=FN000001 Naim=MACO : Наименование на ваш вкус Prizn=TTTMMSSS TTT - вид изделия (первые три символа в поле Prizn) - WIN - оконный блок - DVR - дверной блок - ALL - оконный или дверной блок - пусто - не имеет значения MM - материал, из которого выполнено изделие (4-5 символы в поле Prizn) - PL - металлопластик - AL - алюминий - WO - дерево - пусто - не имет значения SSS - тип изделия (6-8 символы в поле Prizn) - EXT - входная группа (для TTT=DVR) - BTW - межкомнатные двери (для TTT=DVR) - BLC - балконная дверь (для TTT=DVR) - SWG - двери swing (качающиеся створки) (для TTT=DVR) - SLD - раздвижные конструкции - пусто - не имеет значения В этом случае при задании соответствующих параметров в форме "Выбор типа изделия" система автоматически подберёт(отфильтрует) необходимый список, соответствующий установленнам параметрам изделия. Причём при выборе Вами соответствующей гаммы профилей из этого усечённого списка система установит автоматически необходимую сборку фурнитуры, если это прописано в описании выбранной гаммы профилей. см. Dbf-файл ...\Spr\prf_<код гаммы> строка Num=59 столбец DopEl параметр Furniture= Для указания системе допустимый материал, из которого вы изготавливаете изделия служит запись в Dbf-файле ...\Spr\Spr_fn Kod=GUSEMTRL Naim= список из {PL|AL|WO) через запятую Для указания системе допустимых типов дверных блоков служит запись в Dbf-файле ...\Spr\Spr_fn Kod=GUSEDOOR Naim= список из {EXT|BTW|BLC|SWG) через запятую Для указания системе допустимых типов оконных блоков служит запись в Dbf-файле ...\Spr\Spr_fn Kod=GUSEWIND Naim= пока пусто Конечно, если вы используете достаточно малый набор профилей и фурнитуры может и нет необходимости использовать эту возможность. Старое представление используемых гамм профилей и фурнитуры также допустимо! Но обратное не верно!!! *************************************************************************** Изменеия в файле описания фурнитуры (...\spr\fur_...): 1.Для уменьшения длины текста, вводимого в поле Gm (фильтр для списка гаммы профилей) введены конструкции , позволяющие укоротить условие включение данного элемента в расчёт изделия. Теперь это выглядит след. образом A1,A2,A3,...,An - логическая конструкция <или> или обратная конструкция : !(A1,A2,A3,...,An) где Ai может принимать одно из след.значений: код гаммы <начальные символы кода гаммы> Например: T58,T62,TRC900 - элемент включается в изделие, если текущая гамма из этого списка !T58 - элемент включается в изделие, если текущая гамма не T58 !(T58,T62,TRC900) - элемент включается в изделие, если текущая гамма не T58 не T62 не TRC900 T58,T62, - элемент включается в изделие, если текущая гамма T58,T62 а также для всех гамм у которых первые три символа - TRC (TRC900,TRC901,...) 2.В структуру файла включено дополнительное символьное поле Tsx длиной 3 для обеспечения возможности включения элементов, в зависимости от типа дверного блока Возможные значения: EXT - входная группа BTW - межкомнатные двери BLC - дверь в балконном блоке SWG - двери swing (качающиеся створки) пусто - не имеет значения 3.В структуру файла включено дополнительное символьное поле Ort1 длиной 1 для обеспечения возможности включения элементов, в зависимости от схемы открывания створки (во-внутрь \ наружу) Возможные значения: I - элемент включается если створка открывается во-внутрь O - элемент включается если створка открывается наружу пусто - любое открывание 4.В структуру файла включено дополнительное символьное поле Ugs длиной 8 для обеспечения возможности включения элементов, в зависимости от геометрии створки (прямоугольная,арочная,труегольная,...) Структура: ZZZ ZZZ\маска \маска ZZZ - геометрии створки: ARC - арочная UGP - прямоугольная UGX - непрямоугольная UG3 - треугольная UG4 - четырёхугольная UG5 - пятиугольная маска (четыре символа - mmmm) где m один из трёх символов: .(точка) x(латынь на нижнем регистре) o(латынь на нижнем регистре) Створка, созданная в изделии описывается комбинацией из четырёх символов x - край створки вертикален или горизонтален o - край створки не вертикален и не горизонтален первый символ в комбинации - это низ створки второй символ в комбинации - это левый край створки третий символ в комбинации - это верх створки червёртый символ в комбинации - это правый край створки Например 1 |\ 2 /| 3 /--------- 4 /-----\ 5 |--------------| | \ / | / | / \ | | | \ / | / | / \ | | | \ / | / | / \ | | ----- ------ -------------- -------------- |--------------| xxoo xoox xoxx xoxo xxxx Тогда \xxoo выберет только 1 конструкцию \xo.. выберет конструкции 2,3,4 Если добавить впереди геометрию створки UG4\xo.. получим конструкции 3,4 UGX\xo.. даст тот же результат UGX\xoxx получим только 3 конструкцию UG4\xoxx даст тот же результат UGP выберет только 5 конструкцию *************************************************************************** В форму "Выбор и расчёт изделия" добавлен CheckBox "Монтаж по ГОСТ ..." ( расположен ниже CheckBox "Установка на объекте" ) Значение этого элемента выводится в характеристику изделия, а также участвует в алгоритме расчёта монтажных материалов изделия *************************************************************************** В систему добавлена возможность автоматического расчёта монтажных материалов на стадии - компановки заказа - формирования наряда на установку изделий на объекте заказчика Этот расчёт выполняется в соответствии с формулами, расположенными в Dbf-файле ...\Spr\RasMount.dbf Для включения этой возможности добавьте в Dbf-файл ...\Spr\Spr_fn.dbf след. записи: WK000006\включить монтажные материалы при компановке заказа\YES WK000016\выполнить расчёт монтажных материалов при компановке заказа\YES WK000008\списать монтажные материалы при формировании наряда на установку\YES WK000018\выполнить расчёт монтажных материалов при формировании наряда на установку\YES или "отметьте" chkBox в ...\Сервис\Установка системных параметров (закладка "Прочие параметры"): - Обеспечить возможность включить монтажные материалы при компановке заказа - Авторасчёт монт.материалов - Обеспечить возможность списания монтажных материалов на стадии оформления наряда на установку - Авторасчёт монт.материалов Dbf-файл RasMount.dbf имеет след. структуру: - поле nn - порядковый номер записи (не влияет на алгоритм расчёта!) предназначен для упорядочивания записей в файле - поле Type - типы изделий (через запятую), которым принадлежит данная запись win - окно dvr - дверь roll - ролльставни all - для всех изделий - поле Gamma - тип профиля из которого изготавливается изделие (фильтр для списка гаммы профилей) - поле Parent - тип родительского изделия, в который входит данное изделие пусто - любое balc - балконный блок witr - витраж individ - самостоятельное изделие - поле Code - артикул материала - поле Cond - дополнительное условие включения материала в расчёт - поле RasFunc - формула расчёта количества материала Примечание. Для уменьшения длины текста, вводимого в поле Gamma введены конструкции, позволяющие укоротить условие включение монтажного материала в расчёт. Это выглядит след. образом: A1,A2,A3,...,An - логическая конструкция <или> или обратная конструкция : !(A1,A2,A3,...,An) где Ai может принимать одно из след.значений: код гаммы <начальные символы кода гаммы> Например: T58,T62,TRC900 - элемент включается в изделие, если текущая гамма из этого списка !T58 - элемент включается в изделие, если текущая гамма не T58 !(T58,T62,TRC900) - элемент включается в изделие, если текущая гамма не T58 не T62 не TRC900 T58,T62, - элемент включается в изделие, если текущая гамма T58,T62 а также для всех гамм у которых первые три символа - TRC (TRC900,TRC901,...) В качестве аргументов в функции используются след. переменные: m.H -> высота изделия m.W -> ширина изделия m.P -> периметр изделия m.S -> площадь изделия m.N -> число экземпляров изделия Пример: 1 win,dvr individ X0 m.N*ROUND(m.P/100,0) 2 win,dvr X1 m.N*INT(m.H/10) 3 win T58,T62,TRC900 X2 m.N*ROUND(m.S,1) 4 dvr X3 ROUND(m.W*100,3) 5 dvr ALUn3 witr X3 ROUND(m.N*m.W*10,0) 3 win !T58 balc X2 m.N*ROUND(m.S,1) *************************************************************************** В систему добавлена возможность установки <<приоритета>> для исполняемого заказа при его регистрации. Установленное менеджером значение сопровождает заказ на всех стадиях исполнения и выводится на отдельных документах для принятия решений об очерёдности испонения заказов, зарегистрированных в системе. Для включения этой возможности добавьте в Dbf-файл ...\Spr\Spr_fn.dbf след. записи: RANGE000\Список приоритетов\YES (обязательная строка!) RANGE001\Особо важный заказ RANGE002\Заказ первой важности RANGE003\Заказ второй степени важности ... RANGE099\...... *************************************************************************** В систему добавлена возможность автоматической нумерации отгрузочных документов, формируемых средствами Wintechnology: - счёт - счёт-фактура - товарная накладная Для включения этой возможности добавьте в Dbf-файл ...\Spr\Spr_fn след. запись: AUTONUMD\Автоматическая нумерация отгрузочных документов\YES *************************************************************************** В систему добавлена возможность включения в расчёт изделия тонировочной плёнки. Для включения этой возможности добавьте в Dbf-файл ...\Spr\Elemnts группу записей (Num=162): поле Name: Плёнка (для первой записи в группе) поле Elm: Артикул плёнки В этом случае в втором ComboBox-е "Стекло ..." формы "Выбор и расчёт окна ..." появится возможность выбора и установки конкретного артикула плёнки из списка, который вы определили в группе Num=162. Если вы установили в этом ComboBox-е конкретный артикул плёнки, программа расчитает необходимый расход и включит его в стоимость изделия. Естественно этот артикул должен быть включён в классификатор матнриалов! Расчёт плёнки ведётся в соответствии с размерами стекла в кв.метрах. *************************************************************************** В систему добавлена возможность расчёта откосов. Принят следующий алгоритм расчёта. (Хотя он конечно не единственный!) Параметры откосов прописаны в Dbf - файле …\spr\Elements и состоят из трёх типов профилей - 1.основной профиль. Запись Num=155 в …\spr\Elements - 2.доборный профиль. Запись Num=156 в …\spr\Elements - 3.оконтовочный профиль. Запись Num=157 в …\spr\Elements Каждый из них имеет свой параметр W(ширина) W1 - ширина основного профиля W2 - ширина доборного профиля W3 - ширина оконтовочного профиля Расчёт производится по схеме: ------- A ------------------------- / | \ / | \ / D \ / | \ / | \ / | \ / | \ ---------/ <------------ B ------------------------------> \--------- Ширина откоса Wz = квадратный корень[ ((B-A)/2)^2 + D^2 ] С другой стороны Wz = W1 + n*W2 + W3 Тогда n(количество доборных профилей) = ( Wz - W1 - W3 ) / W2 *************************************************************************** В систему добавлена возможность формирования документа: "Комплектовочный лист". См. форму "Просмотр зарегистрированных заказов" Состав Комплектовочного листа определяется составом Dbf-файла ...\Spr\CompList Структура файла CompList: prd - символьное(4) nn - числовое целое name - символьное(30) ed - символьное(5) pempl - символьное(3) kf - числовое(10,3) det - символьное(3) key - символьное(5) lst_a - Memo поле lst_a - Memo поле Где : - prd - тип записи: roll-ролльставни, wind-окна,двери,витражи,... - nn - номер строки в документе - name - наименование строки в документе - ed - ед.изм. - pempl- условие вывода строки при пустом значении выборки YES - выводить строку в любом случае NO - выводить строку только в случае непустой выборки - det - признак для показа конкретных материалов, включённых в данную строку документа по результатам выборки {YES,NO} Если установлено YES - то справа от графы <Кол-во> будет расположен детализированный список материалов .... - key - поле служит для использования результата автоматической выборки материалов. LIST - список изделий в заказе Для prd==wind используются след. ключевые слова: STVW - кол-во оконных створок в изделии STVD - кол-во дверных створок в изделии STV=STVW+STVD общее кол-во створок в изделии STP - кол-во стеклопакетов(стёкол при одинарном остеклении) SAND - кол-во сэндвич-панелей в изделии ZAPL=STP+SAND общее кол-во заполнителей в изделии GRID - кол-во москитных сеток в изделии или отдельно изготовленных SILL - кол-во подоконников EBB - кол-во отливов CONN - кол-во соединительных профилей EXPN - кол-во расширительных(подставочных) профилей HAND - кол-во ручек в изделии SLNP - кол-во отрезов для откосов в изделии SLOP - наличие в изделии откосов Замечание. Для успешного результата автоматической выборки материалов, необходимо наличие списка используемых перечисленных элементов в Dbf-файле ...\spr\Elements: - для EXPN - записи Num=110 - для CONN - записи Num=120 - для SAND - записи Num=130 - для SILL - записи Num=140 - для EBB - записи Num=150 - для SLNP - записи Num=155,156,157 - для HAND - записи Num=300 Кроме этого в этом поле можно задать след. конструкцию: #zz , где zz - код группы материала из классификатора материалов. Список этих кодов находится в Dbf-файле ...\spr\Ind.dbf Например Вы хотите, что-бы в данную строку были выведены все Доводчики, вкл. в изделия заказа. Тогда, пропишите в этом поле #DV (DV - код группы всех Доводчиков, используемых на Вашем предприятии такое сочетание приведено чисто условно, можно любое сочетание, но не более двух символов, т.к. в системе код группы определяется двумя символами) В этом случае система выберет все материалы, вкл. в изделия заказа, у которых код группы - DV и поместит их в данную строку. - lst_a - поле для указания списка материалов, которые необходимо выбрать в данную строку документа из раздела <Технологические отрезы> Список должен состоять из артикулов материалов, разделённых символом <запятая> причём в том-же регистре, как и в классификаторе материалов! Если материал имеет модификацию (например по цвету) и символом-разделителем модификации является <точка> (принятая в системе Wintechnology по умолчанию), то список можно укоротить используя след. конструкцию: <артикул>[/.<мод1>/.<мод2>/.<мод3>...] Например конструкция POD_200[/.WT/.GRN/.BLACK] соответствует списку: POD_200,POD_200.WT,POD_200.GRN,POD_200.BLACK Конструкция без символа / в начале списка POD_200[.WT/.GRN/.BLACK] соответствует списку: POD_200.WT,POD_200.GRN,POD_200.BLACK - lst_b - поле для указания списка материалов, которые необходимо выбрать в данную строку документа из раздела <Спецификация материалов> Правила составления списка аналогичны предыдущему. - kf - поле содержит коэффициент, на который будет умножен результат выборки в данную строку Замечание. Поля key, lst_a, lst_b , служащие для выборки материалов не могут быть заполнены одновременно. *************************************************************************** В систему добавлена возможность автоматической замены артикулов материалов, включаемых в расчёт изделия. Опишем ситуацию, которая породила необходимость включения этой возможности. Допустим на вашем предприятии решили использовать новый материал ARTNEW, взамен материала ART (или поставщик изменил артикул материала: ART -> ARTNEW). Для выхода из этой ситуациии не достаточно включения артикула ARTNEW в классификатор материалов (файл ...\Spr\Klassmat), т.к. он ещё может быть "прописан" в одном или нескольких Dbf-файлах описания технологических параметров: ...\Spr\Elements, ...\Spr\prf..., ...\Spr\fur... Конечно лучший способ: найти место, где этот материал "прописан" и исправить там! Но для этого нужны определённые навыки и достаточно хорошо знать систему. Если вы не обладаете этими качествами, воспользуйтесь следующей возможностью: Откройте Dbf-файл ...\Spr\Recodemt, добавьте новую запись, заполните поля: ART -> Codeold ARTNEW -> Codenew В этом случае система при расчёте изделия автоматически заменит артикул ART на ARTNEW. *************************************************************************** Изменился (незначительно!) расчёт расхода материалов с учётом коэффициента отхода и расчёт стоимости с учётом коэффициент реализации. Во первых в таблице Едениц измерения добавлен показатель - характеристика Во вторых - в классификатор материалов добавлено поле: Kfrel - "Коэффициент реализации" С учётом этого теперь расчёт выглядит след. образом. Расчёт расхода материала ------------------------ Если Klassmat.Ktr > 0 nExp0 = nExp0 * 1000 / Klassmat.Ktr **** Если nKfw > 1.0 Если Klassmat.Wast = 1.0 или Klassmat.Ind = 'GL' и Klassmat.Ed - еденица площади nExp = nExp0 * Klassmat.Wast иначе Если Klassmat.Ed - еденица количества nExp = nExp0 иначе nExp = nExp0 * nKfw **** **** иначе (nKfw = 1.0) Если Klassmat.Ed - еденица количества nExp = nExp0 иначе nExp = nExp0 * Klassmat.Wast **** **** nExp = Окрулить nExp до трёх знаков после запятой Расчёт стоимости ---------------- nSeb = KlassMat.Seb Если Klassmat.Val не Базовая валюта * перерасчёт цены через кросс курс валют nSeb = nSeb * Стоимость валюты Klassmat.Val / Стоимость Базовой валюты **** nSt = nSeb * nExp Если KlassMat.Kfrel > 1.0 nSt = nSt * KlassMat.Kfrel иначе Если группа материала(KlassMat.Ind) найдена в TypeSeb и TypeSeb.Kfrel > 0 nSt = nSt * TypeSeb.Kfrel иначе nSt = nSt * nKfrl **** **** nSt = Окрулить nSt до двух знаков после запятой ------- Здесь: nKfw - коэффициент отхода, установленный при расчёте изделия nKfrl - коэффициент реализации, установленный при расчёте изделия nExp0 - фактический расход, полученный в алгоритме технологического расчёта nExp - расход с учётом коэффициента отхода nSeb - цена материала nSt - расчитанная стоимость материала * Klassmat.Ed - Еденица измерения материала KlassMat.Seb - Цена материала в классификаторе Klassmat.Val - Валюта, в которой учитывается материал KlassMat.Kfrel - Коэффициент реализации материала Klassmat.Wast - Коэффициент отходов материала KlassMat.Ind - Группа материала Klassmat.Ktr - Коэффициент преобразования по учётной еденице измерения TypeSeb.Kfrel - Коэффициент реализации для данной группы материалов P.S. Порядок установки коэффициентов реализации и отхода. На первом шаге расчёта изделия эти коэффициенты принимают значения, установленные в системных параметрах (см. пункт "Установка системных параметров"). В форме "Компановка заказа" Вы можете изменить их (см. кнопку "Параметры по заказу"). В форме "Выбор и расчёт изделия" когда Вы устанавливаете конкретную Гамму профилей коэффициент реализации может автоматически измениться в случае, если для данной Гаммы в её описании прописан индивидуальный коэффициент реализации. (см. строку Num=59, поле Const, Параметр: Kfrel=...) Также в этой форме Вы можете изменить коэффициентов реализации (см. кнопку "Установка коэффициента реализации" в нижнем право углу формы). *************************************************************************** Для обеспечения возможности эксплуатации системы за пределами России введен дополнительный параметр - Национальная валюта Он определяется записью в Dbf-файле ...\Spr\Spr_fn Kod=VL000000 Naim=Код национальной валюты (три символа!!!) В случае отсутствия этой записи система подразумевает код национальной валюты России (RUB) *************************************************************************** Для обеспечения формирования отчётов, не реализованных в системе как типовые, но актуальных для конкретного пользователя системы, а также для выполнения некоторых индивидуальных процедур обработки данных добавлен пункт в меню : Документы\Нестандартные отчёты и процедуры Для использования этой возможности в Dbf-файле ...\Spr\Spr_fn служат следующие записи: Kod=MYREPORT Naim=Наименование отчёта/операции (имя приложения) Например: Kod=MYREPORT Naim=Создание Excel-таблицы для маркетинга (expmark.app) Написание таких приложений возможно самим пользователем при наличии знаний программной среды, в которой разработана система - Visual FoxPro или автором системы по предложению заказчика. *************************************************************************** К вопросу согласования цвета(декора) профиля и цвета фурнитуры. Для обеспечения такого согласования в системе приняты следующие правила. Список допустимых комбинаций цвета(декора) профиля прописываются в файле ...\spr\prf_... в стоках Num=1 в след. виде (поле Elm) xy - комментарий x - задаёт цвет профиля с внутренней стороны y - задаёт цвет профиля с внешней стороны Этот список отображается в ComboBox-е формы .... В системе принято: 0 - Наиболее распостранённый цвет Например 00 - Белый 01 - Кр.декор(наруж) 10 - Кр.декор(внутр) 11 - Кр.декор(двухст) 20 - Зел.декор(внутр) Если выбранный цвет профиля не соответствует 00, система меняет артикулы профиля рамы, створки, импостов на Артикул.xy, в противном случае (цвет профиля==00) система оставляет Артикул в том же виде. Если вы хотите, чтобы штапик автоматически сменил свой артикул в зависимости от выбранного цвета профиля, пропишите след. конструкцию PM17&cl, где: - PM17 - артикул штапика для наиболее распостранённого цвета (в данном случае-Белый цвет) - &cl - конструкция (только так и не иначе!!!), сообщающая системе, что данный артикул надо откорректировать в зависимости от выбранного цвета профиля Тогда, если выбрано 00 или 01 или 02 и т.д., система преобразует PM17&cl в PM17 Если выбрано 10 или 11 или 12 и т.д., система преобразует PM17&cl в PM17.1 Если выбрано 20 или 21 или 22 и т.д., система преобразует PM17&cl в PM17.2 Т.е. цвет штапика соответствует первому символу установленного цвета профиля! Естественно в классификаторе материалов должны присутствовать все допустимые комбинации: PM17,PM17.1,PM17.2,... * Список допустимых комбинаций цвета фурнитуры прописываются в файле ...\spr\fur_... в стоках Type=001 в след. виде (поле Cod) x - комментарий x - задаёт цвет элементов фурнитуры (ручки, петли, ...) Этот список отображается в ComboBox-е формы .... Например 0 - Белая 1 - Коричневая 2 - Зелёная Если вы меняете цвет профиля, система автоматически меняет цвет фурнитуры по принципу: первый знак цвета профиля == цвету элементов фурнитуры (конечно, если это согласовано!!!) Усли вы хотите, чтобы элемент фурнитуры автоматически сменил свой артикул в зависимости от выбранного цвета фурнитуры, пропишите след. конструкцию P&cl, где: - P - артикул элемента фурнитуры(например ручка) для наиболее распостранённого цвета (в данном случае-Белый цвет) - &cl - конструкция (только так и не иначе!!!), сообщающая системе, что данный артикул надо откорректировать в зависимости от выбранного цвета фурнитуры Тогда, если выбрано 0, система преобразует P&cl в P Если выбрано 1, система преобразует P&cl в P.1 Если выбрано 2, система преобразует P&cl в P.2 Естественно в классификаторе материалов должны присутствовать все допустимые комбинации: P,P.1,P.2,... Усли вы не хотите, чтобы элемент фурнитуры менял свой артикул в зависимости от выбранного цвета фурнитуры, пропишите просто артикул элемент фурнитуры : PLC050 без комбинации &cl ***************************************************************************