ГлавнаяРегистрацияВход Завод горного оборудования Пятница, 17.05.2024, 20:19
  Мой компьютер Приветствую Вас Гость | RSS

 
 
Главная » Статьи » Статьи

Программируем в среде "1С": расчёт калорийности питания для детсада
        В России широкое распространение получили программы семейства "1С:Предприятие". Многие бухгалтеры используют их в своей работе, причём неизбежно возникает необходимость внести в модули системы изменения, отражающие специфику конкретного предприятия. Для этих целей обычно либо приглашается программист сторонней фирмы либо используется штатный. Небольшой фирме или организации такие услуги не всегда по силам, и, наверное, у каждого бухгалтера или пользователя "1С:Предприятия" возникало желание самому внести в неё небольшие изменения.
       Предлагаемая программа позволит сделать вам первый шаг на этом тернистом пути. Она иллюстрирует все основные приемы создания программы для системы "1С" - от разработки до получения распечатанного отчета, хотя и не использует специфических бухгалтерских терминов (счетов и т. д.); имеет законченный вид и практическое значение - позволит вам рассчитать калорийность питания.    
         Модуль можно создать как внутри системы "1С", так и в виде внешнего отчета. Описываемая программа выполнена в виде внешнего отчета - файла Питание.ert и может работать в различных конфигурациях "1С". Использовалась конфигурация <Зарплаты и кадры>. Система "1С: Предприятие" работает с объектами, которые называются агрегатными типами данных. К ним относятся справочники, документы, списки значений и др., всего около 30 типов. Для работы программы необходимо создать всего один дополнительный справочник в составе конфигурации - Продукты. Он представляет собой справочную таблицу калорийности, которая по вашему желанию может быть дополнена или сокращена.
       Программы, создаваемые в "1С", не являются самостоятельными, т. е. не могут работать без системы "1С", так как являются программными модулями в составе этой платформы и используют при работе все ее возможности. Программный модуль может быть создан как внутри конфигурации (и вызываться из меню), так и в виде внешнего отчета (файла с расширением *.ert), как в нашем случае. Для запуска такой программы на выполнение нужно запустить "1С:Предприятие" и открыть этот файл. Последовательность действий такова: Файл -> Открыть или щелкнуть по значку Открыть документ (Ctrl+O). При этом появляется окно, в котором находим каталог (обычно \ExtForms) с нужным нам файлом с расширением *.ert и щелкаем по кнопке Открыть. Программа начинает работать, и открывается диалоговое окно для ввода данных.
       
       Справочник
       Вначале создадим справочник Продукты. Для этого запустим "1С:Предприятие" в режиме конфигуратора (Пуск -> Программы ->1С:Предприятие -> Конфигуратор). Выбираем информационную базу и нажимаем ОК. После запуска программы открываем меню "Конструкторы" и выбираем пункт "Новый справочник". В поле "Идентификатор" заменяем подсказку Новый1 на Продукты. Два остальных поля заполнять необязательно. Нажимаем кнопку Далее. В открывшемся окне еще раз нажимаем Далее. В следующем окне отметим галочкой пункт "Вставить команду в пользовательское меню" и нажмем кнопку Готово.
       На экране откроется окно "Справочник Продукты". Реквизиты "Код" и "Наименование"  система всегда создает автоматически, можно лишь изменить длину кода и длину наименования (по умолчанию первая равна 5, а вторая - 25). Добавим еще несколько реквизитов в справочник, другими словами - несколько колонок (граф) в справочную таблицу.
       Для добавления реквизита нужно нажать кнопку Новый. Откроется окно "Свойства реквизита". Щелкнем левой кнопкой мыши по полю "Идентификатор" (в поле появится курсор) и введем Отход. Тип значения нужно выбрать из списка, который откроется при щелчке мышью по кнопке с треугольником в правой части поля. Выберем строку "Число". Длину оставим 10, а точность введем как 2 знака. Щелкнем мышью по ОК для записи реквизита. Аналогично добавим реквизиты "Белки", "Жиры", "Углеводы" и "Ккалории". Тип значения, длину и точность оставляем те же самые. Сохраним внесенные изменения (Файл -> Сохранить), в открывшихся окнах нажмем Да и затем Принять и выйдем из конфигуратора.
       Запустим программу "1С:Предприятие". Если у вас несколько баз данных различных конфигураций 1С, выберите ту конфигурацию, с которой будете использовать расчет калорийности. В примере используется конфигурация "Зарплата и кадры", хотя можно использовать и любую другую, например "Производство+Услуги+Бухгалтерия". Откроем "Справочники". В появившемся меню вы увидите, что добавился новый справочник "Продукты". Откроем его: в данный момент он пуст, и в него можно заносить информацию. Добавить строку в справочник можно, нажав клавишу Insert. Для завершения ввода данных в ячейку и перехода в следующую воспользуйтесь клавишей Enter. В справочник заносятся значения калорийности для 100 граммов продукта. Эти данные указываются на этикетках продуктов, также их можно найти в соответствующей литературе. Набор продуктов и количество строк в справочнике выберите по своему усмотрению.
       
       Программа
       Теперь перейдем к созданию самой программы. Снова запустим "1С" в режиме конфигуратора. В строке главного меню программы щелкнем по заголовку "Конструкторы". В открывшемся меню выберем "Новый отчет". В окне "Конструктор отчета" выберем "Внешний отчет". Нажав на кнопку с многоточиями, откроем каталог ExtForms, в котором зададим имя файла Питание.ert и сохраним. В окнах конструктора отчета нажмем два раза Далее и в следующих двух окнах - Далее и Готово. На экране появляется форма внешнего отчета Питание.ert. Откроем вкладку "Модуль". В ней записываются операторы программы, размещаются комментарии, процедуры и функции нашей программы.
       Основная программа модуля состоит всего из четырёх операторов. Они отрабатывают при запуске Питание.ert на выполнение, остальные процедуры запускаются при нажатии на соответствующие кнопки.
       Чтобы можно было работать с объектами "Таблица", "Справочник", "Список значений", в начале процедуры им нужно задать имена с помощью функции СоздатьОбъект. Затем можно будет по этим именам обращаться к различным атрибутам (переменным) данных объектов.
       В программе используется агрегатный тип данных "Список значений", он хранит таблицу с тремя столбцами (колонками), имеющими следующий смысл:
* "Значение" - данные, заносимые в этот столбец, могут быть любого, в том числе и агрегатного типа;
* "Представление значения" (необязательный параметр) - описание значения, или комментарий, или второе значение. Данные этого столбца должны быть символьного типа; если это не так, то представление автоматически преобразуется в символьный тип;
* "Пометка" (необязательный параметр) - число 0 или 1, по умолчанию все заносимые в список значения не помечены (пометка = 0).
       Данные по продуктам "Код" и "Расход" (в кг) заносятся в список значений по нажатию кнопки Запись и хранятся там на время работы программы. При этом проверяется, чтобы оба поля были заполнены и код продукта не был больше максимально возможного. Если это не так, выдается предупреждение, и данные не записываются. В конце ввода данных заносится число детодней и выбираются месяц и год расчета. После чего нажимаем кнопку Сформировать. При этом построчно формируется таблица расчета калорийности, которую можно просмотреть на экране и распечатать.
       Процедура Подбор() запускается при нажатии кнопки Месяц. В ниспадающем меню со списком месяцев нужно выбрать один из них, его значение присваивается переменной "Месяц". Аналогично работает процедура Выбор(), она запускается по нажатию кнопки Год.
       В список значений они добавляются парами - само значение (код продукта) и его представление (расход продукта). Последнее по определению должно быть символьным, поэтому с помощью функции Строка числовое значение расхода преобразуется в строку. Впрочем, система автоматически выполнит это преобразование, если представление и не будет являться строкой.
       Следующий оператор - Сообщить. У него первым параметром идет пара двойных кавычек, тем самым мы указываем функции, что следующие далее переменные нужно преобразовать в символьный вид и вывести в окне сообщений.
       В процедуре ПриЗаписи() используется функция ПустоеЗначение(). Она возвращает 1, если в данное поле не было внесено значение, в противном случае будет 0.
       В процедуре Сформировать() используется метод ПолучитьЗначение() объекта СписокЗначений сзнач, который возвращает значение (кодП) и еще представление значения (расходП) по номеру в списке ин. Далее следует расходП, хранящийся в списке значений в виде строки, - он преобразуется в числовое значение функцией Число().
       Если метод НайтиПоКоду() вернул 0, т. е. код в справочнике не найден, выдается предупреждение и происходит выход из процедуры. В противном случае переменным присваиваются значения реквизитов справочника и производится расчет калорийности по этому продукту. Итоги увеличиваются на величину вычисленных значений.
       Теперь выводим в таблицу строку по этому продукту. После обработки всего списка значений выходим из цикла и вычисляем соотношение белков, жиров и углеводов. За единицу можно принять максимум из белков или жиров. После расчета в таблицу выводятся пустая строка, итоги и рассчитанное соотношение.
       Рассчитанная таблица выводится на экран, и ее можно распечатать (Файл -> Печать) или сохранить в виде файла с расширением *.mxl, например "Табл1.mxl". При желании таблицу можно сохранить в формате электронных таблиц XLS и затем распечатать в MS Excel.
       Текст программы записывается на вкладке Модуль Питание.ert. Две наклонные черты и следующий за ними текст - это комментарии, их можно не вводить, они приведены для пояснения работы операторов программы. В программе есть проверка на максимальный код продукта (124), если количество записей в справочнике другое, измените это число. Ниже идет сама программа:
       

 // Расчет калорийности питания

перем сЗнач;
перем расходП,кодП,ин,к,Месяц,Год;
//***************************************
Процедура Подбор()
СписокМ = СоздатьОбъект("СписокЗначений");
СписокМ.ДобавитьЗначение("Январь");
СписокМ.ДобавитьЗначение("Февраль");
СписокМ.ДобавитьЗначение("Март");
СписокМ.ДобавитьЗначение("Апрель");
СписокМ.ДобавитьЗначение("Май");
СписокМ.ДобавитьЗначение("Июнь");
СписокМ.ДобавитьЗначение("Июль");
СписокМ.ДобавитьЗначение("Август");
СписокМ.ДобавитьЗначение("Сентябрь");
СписокМ.ДобавитьЗначение("Октябрь");
СписокМ.ДобавитьЗначение("Ноябрь");
СписокМ.ДобавитьЗначение("Декабрь");
СписокМ.ВыбратьЗначение(Месяц, , , ,1); // 1 - выбор из меню
КонецПроцедуры
//***************************************
Процедура Выбор()
СписокГ = СоздатьОбъект("СписокЗначений");
СписокГ.ДобавитьЗначение("2013");
СписокГ.ДобавитьЗначение("2014");
СписокГ.ВыбратьЗначение(Год, , , ,1); // 1 - выбор из меню
КонецПроцедуры
//*******************************************
Функция КонтрольКода()
Если код>124 Тогда // 124 - количество наименований продуктов в справочнике
Возврат 0; // если код больше 124, функция возвращает 0
Иначе
Возврат 1; // иначе вернет 1
КонецЕсли;
КонецФункции//КонтрольКода
//*******************************************
//Проверяет, все ли данные введены
//если нет ошибок, осуществляет запись элемента

Процедура ПриЗаписи()
Если (ПустоеЗначение(код)=1)
или (ПустоеЗначение(расход)=1) Тогда
Предупреждение("В диалоге есть неопределенные реквизиты.");
Возврат; //Не записываем данные
//КонтрольКода вернет 0, если такого кода в справочнике нет
ИначеЕсли КонтрольКода()=0 Тогда
Предупреждение("Код больше максимально возможного!");
Возврат; //Запрещает запись ошибочных данных
КонецЕсли;

сЗнач.ДобавитьЗначение(код,расход);
к=к+1;
Сообщить(""+код+" "+расход);
КонецПроцедуры//ПриЗаписи
//*******************************************
Процедура Сформировать()
Таб=СоздатьОбъект("Таблица"); // создадим объект Таблица с именем Таб
Прод=СоздатьОбъект("Справочник.Продукты"); // определим справочник Продукты как Прод
итог_бел=0; итог_жир=0; итог_угл=0; итог_калор=0; // обнулим итоги
Если (ПустоеЗначение(детодни)=1) // проверим, все ли данные диалога введены
или (ПустоеЗначение(Месяц)=1) // если не все, выведем предупреждение
или (ПустоеЗначение(Год)=1) Тогда // и выйдем из процедуры
Предупреждение("В диалоге есть неопределенные реквизиты.");
Возврат; //Не записываем данные
КонецЕсли;
сЗнач.Сортировать(); // сортировать список значений по возрастанию
Таб.ВывестиСекцию("Шапка"); // вывести шапку таблицы
Для ин = 1 По к Цикл // цикл обработки списка значений

кодП=сЗнач.ПолучитьЗначение(ин,расходП);
расходП=Число(расходП); // преобразуем строку расходП в число
Если Прод.НайтиПоКоду(кодП,0)=0 Тогда // параметр 0 - поиск во всем справочнике
Предупреждение(" Нет такого кода!");
возврат;
иначе
код_п=Прод.Код;
продукт=Прод.Наименование;
отх=Прод.отход/100*расходП;
остат=расходП-отх;
расх=остат*1000/детодни;
бел=расх*Прод.Белки/100;
жир=расх*Прод.Жиры/100;
угл=расх*Прод.Углеводы/100;
ккалор=расх*Прод.Ккалории/100;
итог_бел=итог_бел+бел; итог_жир=итог_жир+жир;
итог_угл=итог_угл+угл; итог_калор=итог_калор+ккалор;

Таб.ВывестиСекцию("Строка");

КонецЕсли;

КонецЦикла; //для
один=макс(итог_бел,итог_жир);
ит_бел=итог_бел/один;
ит_жир=итог_жир/один;
ит_угл=итог_угл/один;

Таб.ВывестиСекцию("Пусто");
Таб.ВывестиСекцию("Итог");
Таб.ВывестиСекцию("Результат");

Таб.ТолькоПросмотр(0); // 0 - редактирование таблицы, 1 - запрет
Таб.Показать(,,); // выводит таблицу на экран
КонецПроцедуры
//_____Основная__программа___________________
ОчиститьОкноСообщений();
сЗнач=СоздатьОбъект("СписокЗначений");
к=0;
ин=1;
//*******************************************


Вкладка "Диалог" служит для создания формы для ввода данных, эту форму мы видим на экране при запуске программы (рис.1). Добавим в форму несколько полей для ввода данных. Сначала добавим в форму текст с её названием. В строке главного меню конфигуратора выберем Вставить, затем в ниспадающем меню - пункт "Текст". Форма курсора мыши изменится на крестик с буквой "Т". Держа левую кнопку мыши нажатой, потянем мышь вправо и отметим прямоугольную рамку для ввода текста. В появившемся окне "Свойства текста" в поле "Заголовок" введем Расчет калорийности питания. На вкладке "Шрифт" этого окна снимем галочку "Шрифт по умолчанию", выберем размер шрифта 10 и пометим галочкой флажок "Жирный". На вкладке "Дополнительно" выберем "Положение Центр по горизонтали" и установим флажок "Центр по вертикали". Щелкнем по ОК.

Теперь в форму диалога вставим поле для ввода данных. Снова в меню конфигуратора выберем Вставить, затем - Реквизит диалога. Отметим левой кнопкой мыши поле для ввода кода продукта. В окне "Свойства поля ввода" на вкладке "Общие" в поле "Идентификатор" введем Код, на вкладке "Тип" выберем тип Число, длину 5, точность 0 и щелкнем ОК. Слева от поля ввода поместим текст Код (аналогично надписи Расчет калорийности питания). Аналогично создадим поля "Расход", "Детодни" и поясняющие надписи к ним. В свободном месте формы диалога вставим текст Номер, справа от него вставим еще один текст, в свойствах которого поля "Заголовок" и "Идентификатор" оставим пустыми, на вкладке "Дополнительно" в поле "Формула" введем букву к, которой будет обозначаться порядковый номер продукта в печатной форме отчета.
Осталось добавить несколько кнопок, и форма диалога будет готова. Разберем, как добавить кнопку Месяц, остальные добавляются аналогично.
Опять же в меню конфигуратора выберем Вставить, затем пункт Кнопка. В свойствах кнопки в поле "Заголовок" напечатаем Месяц, в поле "Формула" - Подбор(). Чуть ниже добавим текст, в свойствах которого поля "Заголовок" и "Идентификатор" оставим пустыми, на вкладке "Дополнительно" в поле "Формула" введем Месяц. Точно так же оформлены кнопка и текст Год (формула для кнопки - Выбор()). Месяц и год будут вставлены в заголовок печатной формы отчета. Добавим кнопку Запись (формула ПриЗаписи()). При нажатии на Запись запустится процедура ПриЗаписи() модуля внешнего отчета Питание.ert. На этом оформление формы диалога закончено.

Макет отчёта
Расчет калорийности выводится на экран в виде таблицы. Макет этой таблицы (отчета) нужно создать на вкладке "Таблица" внешнего отчета Питание.ert (рис.2). Макет (заготовка) таблицы состоит из секций, например Шапка, Строка. Шапка обычно выводится один раз, а Строка - многократно. Последовательность вывода секций можно менять в программе. В ячейку таблицы заносится обычный текст или выражение языка программирования "1С".

Прежде всего введем заголовок документа. Щелкнем левой кнопкой мышки по 3-й ячейке первой строки макета таблицы, наберем на клавиатуре название документа Расчет калорийности питания и нажмем клавишу Enter. Заголовок документа введен. Содержимое ячейки может быть оформлено по-разному: допускается изменить начертание и размер текста, обрамление ячейки, цвет фона и текста. Для этого щелкнем правой кнопкой мышки по нужной ячейке и в появившемся меню выберем пункт "Свойства". Например, для изменения начертания и размера шрифта заголовка выберем вкладку "Шрифт", снимем левый флажок "Авто" (иначе программа не позволит внести изменения), выберем размер 11 и установим флажок "Жирный". После чего нажмем кнопку ОК.
В 3-ю ячейку 3-й строки внесем месяц и год расчета. Так как они будут выводиться программой и каждый раз будут разные, то в качестве типа текста нужно выбрать "Выражение". "Выражение" состоит из переменной Месяц, одного пробела, заключенного в двойные кавычки, и переменной Год. Аналогично в 8-ю ячейку 3-й строки введем выражение "Дата выдачи"+ТекущаяДата(). Выражения в ячейках выводятся в угловых скобках, чтобы отличить их от обычного текста.
В ячейки 4-й строки макета таблицы введем названия колонок таблицы. Они представляют собой обычный текст, дополнительно каждая ячейка обрамлена линиями с четырёх сторон, например ячейка Наименование. В ячейки 5-й строки макета таблицы занесены выражения. При работе программы эта строка выводится многократно, и в ячейки будут заноситься значения выражений в нужном формате.
Формат данных при их выводе на печать можно изменять, применяя встроенную функцию Формат, имеющую синтаксис: представлениеЗначения=Формат(значение,форматнаяСтрока);.
Функция Формат, получив значение, преобразовывает его в соответствии с правилами, заданными символьным параметром форматнаяСтрока, и возвращает результат в виде строки с отформатированными данными. Вот примеры:
Сообщить(Формат(-123.45,"Ч9.4")); // напечатает -123.4500
Сообщить(Формат("ААББВВ","С2")); // напечатает АА
Например, в ячейке 5-й строки для колонки "Расход" в свойствах ячейки нужно указать тип "Выражение" и само выражение Формат(расходП,"Ч010.2"). Если в форматной строке перед длиной поля проставлен символ 0 (ноль), то нулевые значения при выводе будут подавляться (выводится пустая строка). Аналогично для других ячеек этой строки:
* для колонки "Отход" - Формат(отх,"Ч010.2");
* для колонки "Р-д 1р/г" (расход на одного ребенка в граммах) - Формат(расх,"Ч010.2");
* для колонки "Белки" - Формат(бел,"Ч010.2");
* для колонки "Жиры" - Формат(жир,"Ч010.2");
* для колонки "Углеводы" - Формат(угл,"Ч010.2");
* для колонки "Ккалории" - Формат(ккалор,"Ч010.2");
* для колонки "№" - ин;
* для колонки "Код" - код_п;
* для колонки "Наименование" - продукт.
В 7-й строке выводятся суммарные значения по колонкам "Белки", "Жиры", "Углеводы" и "Ккалории". Форматы выводимых данных следующие:
* для колонки "Белки" - Формат(итог_бел,"Ч010.2");
* для колонки "Жиры" - Формат(итог_жир,"Ч010.2");
* для колонки "Углеводы" - Формат(итог_угл,"Ч010.2");
* для колонки "Ккалории" - Формат(итог_калор,"Ч010.2").
В 8-й строке выводятся результаты - соотношение белков, жиров и углеводов, а также количество детодней. Выражения для ячеек следующие:
* для колонки "Белки" - Формат(ит_бел,"Ч010.2");
* для колонки "Жиры" - Формат(ит_жир,"Ч010.2");
* для колонки "Углеводы" - Формат(ит_угл,"Ч010.2");
* для колонки "Ккалории" - детодни.

Ширину колонок таблицы нужно изменить в соответствии с длиной выводимого текста, иначе текст будет обрезаться. Для изменения ширины колонки установим курсор на вертикальную линию-разделитель в строке с цифровыми обозначениями колонок. Как только курсор примет вид двух параллельных линий, нажмем левую клавишу мыши и передвинем границу колонки влево или вправо.
Осталось создать секции таблицы и дать им названия. Объединим в секцию первые четыре строки таблицы. Для этого выполним их выделение, проведя мышью с нажатой левой клавишей по номерам строк 1 - 4, в строке главного меню программы щелкнем по заголовку "Таблица". В открывшемся меню выберем пункт Включить в секцию и присвоим идентификатору секции значение Шапка. Аналогичным образом создадим секции Строка, Пусто, Итог, Результат. Макет отчета готов.

      Когда продуктов немного, данные удобно вводить прямо в форму диалога. Если же количество наименований несколько десятков, нужно сначала подготовить dbf-файл и потом рассчитать калорийность, загрузив этот dbf-файл в программу. Этот файл пригодится и в том случае, если понадобится пересчитать калорийность, исправив некоторые данные. Такой файл можно создать утилитой DBFnavigator Алексея Долгачева. Скачать ее можно на сайте http://www.wosoft.ru  Запустите DBFnavigator.exe. Перед занесением данных надо создать файл rashod и определить его структуру. Расширение dbf к имени файла добавляется автоматически.

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



      Наша база данных (файл (rashod.dbf) имеет всего два поля – KOD и KOL. Перед заполнением  базы данных (таблицы) нужно задать поля базы данных. Имя поля NEWFIELD (оно выделено) нужно заменить на KOD. Не забудьте переключиться на английский регистр. Чтобы переместить курсор на следующий столбец, нажмите TAB или стрелку вправо. Тип поля указан Character (символы), нужно изменить его на Numeric (Числа). Просто нажмите английское N и тип поля изменится на Numeric или выберите его из ниспадающего списка, нажав на кнопку с треугольником. В следующем поле Ширина задается количество цифр в числе. Ширину зададим 8. В следующей колонке указывается количество знаков в дробной части числа. Укажем 2. Ширина числа подсчитывается как сумма количества знаков в целой части числа плюс десятичная точка, отделяющая дробную часть, плюс количество знаков в дробной части числа. Т.е. в данном случае мы сможем ввести число, имеющее 5 знаков в целой части и 2 знака в дробной части числа. Теперь надо добавить еще одно поле базы данных. Нажмите кнопку Добавить.



      Появится еще одна строчка. Перемещаться между полями можно с помощью стрелок на клавиатуре. Имя поля измените на KOL, тип поля Numeric, ширина 8, дробная часть 2. Структура таблицы определена. Для сохранения ее нажмите кнопку Сохранить.



      Программа автоматически переходит к заполнению таблицы. Вверху указаны названия полей базы данных.



      Чтобы добавить первую запись в базу данных, нажмите F2. Появится строка. В колонку KOD вводим код продукта (указан в справочнике Продукты). В колонку KOL вводим количество этого продукта в килограммах.



      Если яйца в штуках, пересчитываем в килограммы (средний вес яйца указан в справочнике Продукты). После занесения всех записей не забудьте сохранить полученную.базу данных. В меню DBFnavigator выберите Файл и Сохранить.



      Теперь файл rashod.dbf готов для использования его в программе расчета калорийности питания. Запомните место, где вы сохранили этот файл, так как вам придется потом найти и указать этот файл при расчете калорийности питания. Для этого запустите 1С, в меню Файл – Открыть найдите и запустите Питание.ert. После запуска расчета калорийности вместо ручного ввода данных нажмите кнопку Загрузить. В окне «Ввод данных из файла» найдите и пометьте подготовленный вами файл rashod.dbf и нажмите Открыть. Внизу в окне сообщений выводятся обработанные записи файла rashod.dbf. Последний номер продукта отобразится в форме диалога Питание.ert. В эту форму вводим количество детодней, выбираем из выпадающих списков месяц и год и нажимаем кнопку Сформировать. В окне Таблица отобразится расчет калорийности питания, который можно вывести на печать Файл – Печать. При необходимости можно отредактировать в DBFnavigator файл rashod.dbf и снова рассчитать калорийность питания. Для этого запустите DBFnavigator, в меню Файл – Открыть найдите и откройте rashod.dbf. На экран выводятся записи базы данных. Исправьте нужные записи и в меню выберите Файл – Сохранить или Сохранить как…, если хотите изменить имя файла. Удобно сохранять файлы, добавив к имени номер месяца и год.
      Уже несколько лет эта программа используется для расчета калорийности питания в одном из детских садов Забайкальского края.

Полный вариант статьи с пошаговыми иллюстрациями (19 снимков экрана) и всеми необходимыми файлами можно скачать в разделе Каталог файлов

Последнее редактирование 03.04.2013

Категория: Статьи | Добавил: admin (20.06.2009) | Автор: Boris
Просмотров: 6149 | Комментарии: 12 | Рейтинг: 5.0/1 |
Всего комментариев: 0
Имя *:
Email *:
Код *:
 
 
Категории каталога
Статьи [55]
Программы на ассемблере [2]
Простые программки на ассемблере IBM PC

Форма входа

Наш опрос
Кто Вы?
Всего ответов: 339

Поиск

Друзья сайта

Статистика
 

Copyright OAO ZGO © 2007 - 2024
Сайт управляется системой uCoz