<< Пред. стр. 4 (из 12) След. >>
9) "Скидки" (Скидки на систему).
Назначение: для ввода и отображения величены скидки на систему при продаже.
Заполнение: ввод с клавиатуры, значение для ввода - дробное число (0.15 - 15%).
Источник записей: аналогичное поле в исходной таблице.
Примечание: для данного поля, в процедуре обработки событий по событию "После обновления", происходит расчет цен по данному заказу счета в соответствии со значением скидки в данном поле и со значениями полей "СпецвыпускИлиНет", "Количество", "КоличествоМ", "СкидкиС" текущей формы (листинг 3.14).
10) "КоличествоМ" (Количество месяцев)
Назначение: для ввода и отображения количества месяцев сопровождения на текущую систему.
Заполнение: ввод с клавиатуры.
Источник записей: аналогичное поле в исходной таблице.
Примечание: для данного поля, в процедуре обработки событий по событию "После обновления", происходит расчет цен по данному заказу счета в соответствии со значением в данном поле и со значениями полей "СпецвыпускИлиНет", "Скидки", "Количество", "СкидкиС" текущей формы (листинг 3.15).
11) "СкидкиС" (Скидки на сопров.).
Назначение: для ввода и отображения величены скидки на сопровождение.
Заполнение: ввод с клавиатуры, значение для ввода - дробное число (0.15 - 15%).
Источник записей: аналогичное поле в исходной таблице.
Примечание: для данного поля, в процедуре обработки событий по событию "После обновления", происходит расчет цен по данному заказу счета в соответствии со значением скидки в данном поле и со значениями полей "СпецвыпускИлиНет", "Количество", "КоличествоМ", текущей формы (листинг 3.16).
12) "Цена" (Поставка).
Назначение: для ввода и отображения цены на систему при покупке.
Заполнение: ввод с клавиатуры или по процедуре обработки событий вышеописанных полей.
Источник записей: аналогичное поле в исходной таблице.
13) "Сопровождение".
Назначение: для ввода и отображения цены на сопровождение.
Заполнение: ввод с клавиатуры или по процедуре обработки событий вышеописанных полей.
Источник записей: аналогичное поле в исходной таблице.
14) "КодСчета" - скрытое поле.
Назначение: главное связующее поле по для форм Подчиненная1 и Подчиненная1.1.
Заполнение: автоматически .
Источник записей: аналогичное поле в исходной таблице.
Примечание: не удалять.
15) "СистемыНаВыписку" - список.
Назначение: свободное поле для отображения перечня заказов входящих в счет.
Заполнение: по SQL - запросу.
Источник строк: SQL - запрос по таблице "НаВыпискуСчета".
(SELECT DISTINCTROW [НаВыпискуСчета].[Код], [НаВыпискуСчета].[Система], [НаВыпискуСчета].[Количество] FROM [НаВыпискуСчета];)
Примечание: так как данное поле имеет источник строк SQL - запрос по временной таблице, то отображение изменений для данного поля происходит после обновления данных в форме (DoCmd Refresh).
б) Кнопки. (для кнопок процедуры обработки событий вызываются по событию "Нажатие кнопки")
1) "Кнопка63" (Добавить новую >- при выписке в счете нового заказа).
Назначение: занесение информации для данного заказа счета во временную таблицу "НаВыпискуСчета" с проверкой на наличие правильности заполнения критических значений полей, обновление содержимого формы, с целью отображения последних изменений (в списке "СистемыНаВыписку") и переход на новую запись в текущей форме (для ввода нового заказа счета). Процедура обработки событий (листинг 3.17).
Примечания: - .
2) "Кнопка69" (Добавить > - при повторной выписке счета).
Назначение: занесение информации для данного заказа счета во временную таблицу "НаВыпискуСчета" с проверкой на наличие правильности заполнения критических значений полей, обновление содержимого формы, с целью отображения последних изменений (в списке "СистемыНаВыписку") и переход на следующую запись в текущей форме (для ввода или изменения следующего заказа счета). Процедура обработки событий (листинг 3.18).
Примечания: - .
3) "Кнопка71", "Кнопка72", "Кнопка73", "Кнопка75".
Назначение: для перехода по записям для текущей формы (заказы для данной счета). Реализация с помощью мастера.
4) "Кнопка70".
Назначение: для удаления выделенной записи в списке "СистемыНаВыписку" из временной таблицы "НаВыпискуСчета" с проверкой на наличие выделенной записи, обновление содержимого формы, с целью отображения последних изменений (в списке "СистемыНаВыписку"). Процедура обработки событий (листинг 3.19).
Примечания: - .
5) "Кнопка74".
Назначение: для удаления всех записей в списке "СистемыНаВыписку" из временной таблицы "НаВыпискуСчета", обновление содержимого формы, с целью отображения последних изменений (в списке "СистемыНаВыписку"). Процедура обработки событий (листинг 3.20).
Примечания: - .
Комментарии.
Описанная структура имеет следующие особенности работы
1. Для формы Основная по событию "Текущая запись" в процедуре обработки событий происходит расчет по значений задолженности текущей организации (заполняется поле "Долг") и проверяется наличие важных примечаний для данной организации (выделение цветом текста кнопки "Примечания")
(листинг 3.21).
2. Также для формы Основная при загрузки инициализируются две переменные flagNew и flagFind использующиеся для устранения ошибок в процедуре обработки событий по событию "Текущая запись" для формы Основная (для новой организации не может быть кредиторской или авансовой задолженности). Значения переменных - флагов устанавливаются в процедурах обработки событий для кнопок "Кнопка165" (flagFind) и "Кнопка_Новая_Запись" (flagNew). (листинг 3.22).
3. Для формы Подчиненная1 по событию "Открытие" в процедуре обработки событий происходит очистка временной таблицы "НаВыпискуСчета" и "НаВыпискуНакладной" по функции ClearListBox()
2. Оформление, учет и выписка вторичной отчетной документации (акты приемки-сдачи, накладные, счета-фактуры, акты на информационно-программного сопровождение, счета-фактуры на информационно-программного сопровождение), фиксирование информации о приходе денежных средств по счетам, формирование первичного авансового отчета по основному профилю работы организации (системы КонсультантПлюс)
Для реализации данного этапа была разработана структура взаимодействия трех форм:
1. "Просмотр" - основная
(источник записей таблица "Заказчики").
2. "ПросмотрSub" - подчиненная1 (к основной)
(источник записей таблица "СчетаОсновные").
3. "ПросмотрSubSub" - подчиненная1.1 (к подчиненной1)
(источник записей таблица "Дистрибутивы").
4. "Платежки" - подчиненная1.2 (к подчиненной1)
(источник записей таблица "Платежки").
5. "СчетаФактурыОсновные" - подчиненная1.3 (к подчиненной1)
(источник записей таблица "СчетаФактурыОсновные").
Форма "Просмотр".
а) Поля.
1) "Образец"
Назначение: для ввода текстовой и цифровой информации использующейся для поиска
по названию организации в процедуре обработки события кнопки "Кнопка165"(Найти).
Вводимое значение: текстовое или цифровое.
2) "Код" (поле со списком)
Назначение: для отображения и выбора типа статуса текущей организации.
Заполнение: выбор из списка.
Источник записей: аналогичное поле в исходной таблице.
3) "Организация"
Назначение: для отображения названия текущей организации.
Источник записей: аналогичное поле в исходной таблице.
4) "Список116"(Список)
Назначение: свободное поле для поиска организации и перехода на требуемую запись.
Источник записей: SQL - запрос по таблице "Заказчики".
Примечания: сформирован с помощью мастера.
5) Остальные поля "Индекс", "Страна" и т.д. предназначены для отображения ввода и изменения адресных и банковских реквизитов текущей организации.
Назначение: для отображения типа сопровождения по которому производится расчет для текущей организации.
Источники записей: аналогичные поля в исходной таблице.
6) "ПервыйМесяц"
Назначение: свободное поле для ввода первого месяца сопровождения начиная с которого необходимо выписывать акты и счета-фактуры на сопровождение для текущей организации.
Примечания: вводимое значение в кратком формате даты (например 04.03.97) используется только для формирования начальной даты при выписке акты и счета-фактуры на сопровождение для текущей организации.
б) Кнопки. (для кнопок процедуры обработки событий вызываются по событию "Нажатие кнопки")
1) "Кнопка165"(Найти).
Назначение: для поиска и вывода информации по организации по текстовому образцу введенному в поле "Образец". Процедура обработки событий (листинг 3.23).
Примечания: задание флагу flagFind значения True (используется для отлавливания ошибки в "Отсутствие текущей записи", процедуре обработки события по событию "Текущая запись" для формы "Основная").
2) "Кнопка139"(Настройки печати).
Назначение: для вывода на экран диалогового окна "Настройки счета" (смотри пункт __).
Примечания: реализация с помощью мастера.
3) "Кнопка174".
Назначение: для предварительного просмотра образца актов, накладных и счетов-фактур по счету при продаже. Процедура обработки событий (листинг 3.24).
Примечания: реализация с помощью мастера, проверка значений формы критических для выписки счета.
4) "КнопкаЗакрытьФорму" (Настройки счета).
Назначение: для закрытия текущей формы.
Примечания: реализация с помощью мастера.
5) "Кнопка181".
Назначение: для предварительного просмотра образца актов и счетов-фактур на сопровождение по счету для текущей организации (листинг 3.25)
Примечания: реализация с помощью мастера, проверка значений формы критических для выписки счета.
Форма "ПросмотрSub".
а) Поля.
1) "НомерСчета".
Назначение: для отображения номера счета для текущей организации.
Источник записей: аналогичное поле в исходной таблице.
2) "Код" (Форма оплаты).
Назначение: для отображения и выбора формы оплаты данного счета.
Заполнение: выбор из списка.
Источник записей: аналогичное поле в исходной таблице.
3) "КодОтдела"(Отделы).
Назначение: для отображения и выбора отдела который выписал данный счет..
Заполнение: выбор из списка.
Источник записей: аналогичное поле в исходной таблице.
4) "НомерНакладной" ((№ Накладной).
Назначение: для ввода и отображения номера накладной, при выписке документации по счету на продажу.
Заполнение: в ввод с клавиатуры или в процедуре обработки событий по событию "После обновления" группы "Группв337" (смотри пункт __ ).
Источник записей: аналогичное поле в исходной таблице.
Примечание: при просмотре счета на сопровождение значение данного поля остается пустым. *вынести номера платежных поручений в отдельную таблицу, так как не каждый счет выписывается на продажу и возможно наличие большого количества пустых полей.
5) "ВсеПлатежки" - скрытое поле.
Назначение: свободное поле для хранения текстовой информации по платежным поручениям оплачивающим текущий счет (Пример: № 24 от 03.02.97).
Заполнение: в процедуре обработки событий кнопки "Кнопка174" в форме Основная. (смотри пункт __ ).
Примечание: * усовершенствовать заполнение по правилам (Пример: 3 февраля 1997 года).
6) "ПоСчету" (е по счету).
Назначение: свободное поле для отображения общей суммы счета включая НДС для визуальной оценки совпадения суммы по счету и суммы по платежным поручениям.
Заполнение: в процедуре обработки событий кнопки "Кнопка347" (Занести).
7) "ПоПлатежке" (е по платежке).
Назначение: свободное поле для отображения общей суммы прихода денежных средств по платежным поручениям, для визуальной оценки совпадения суммы по счету и суммы по платежным поручениям.
Заполнение: в процедуре обработки событий кнопки "Кнопка347" (Занести)(смотри пункт __ ).
8) "Разница".
Назначение: свободное поле для отображения разницы общей суммы счета включая НДС и общей суммы прихода денежных средств по платежным поручениям.
Заполнение: в процедуре обработки событий кнопки "Кнопка347" (Занести)(смотри пункт __ ).
9) "КодИсточника".
Назначение: для выбора и отображения названия источника информации о пользователе по данному счету.
Заполнение: выбор из списка .
Источник записей: аналогичное поле в исходной таблице.
10) "КодПодразделения".
Назначение: для выбора и отображения названия подразделения от которого поступила информации о пользователе по данному счету.
Заполнение: выбор из списка .
Источник записей: аналогичное поле в исходной таблице.
11) "КодСотрудника".
Назначение: для выбора и отображения фамилии сотрудника от которого поступила информации о пользователе по данному счету.
Заполнение: выбор из списка .
Источник записей: аналогичное поле в исходной таблице.
12) "КодАгента".
Назначение: для выбора и отображения фамилии агента от которого поступила информации о пользователе по данному счету.
Заполнение: выбор из списка .
Источник записей: аналогичное поле в исходной таблице.
Примечание: в процедуре обработки событий по событию "После обновления" для данного поля заполняется поле "СуммаСНакоплением" для отображения общей суммы заказов проданных вышеуказанным агентом в долларах (листинг 3.26).
13) "Агент_процент_1"(% от реализации).
Назначение: для ввода и отображения величины процента агентского вознаграждения от суммы реализации по данному счету.
Заполнение: ввод с клавиатуры, тип вводимого значения дробное число с разделителем точка (Пример: 0.1 - 10%).
Источник записей: аналогичное поле в исходной таблице.
Примечание: в процедуре обработки событий по событию "После обновления" для данного поля рассчитывается значение в поле "ВознагрАгента" и "НаРукиАгент" текущей формы (листинг 3.27).
14) "Агент_процент_2"(% от сопровож.).
Назначение: для ввода и отображения величины процента агентского вознаграждения от суммы сопровождения по данному счету.
Заполнение: ввод с клавиатуры, тип вводимого значения дробное число с разделителем точка (Пример: 0.1 - 10%).
Источник записей: аналогичное поле в исходной таблице.
Примечание: в процедуре обработки событий по событию "После обновления" для данного поля рассчитывается значение в поле "ВознагрАгента" "НаРукиАгент" текущей формы (листинг 3.28).
15) "ВознагрАгент" (Сумма).
Назначение: для отображения общей суммы агентского вознаграждения от суммы данного счета.
Заполнение: в процедуре обработки событий по событию "После обновления" для поля "Агент_процент_1" и поля "Агент_процент_2".
Источник записей: аналогичное поле в исходной таблице.
16) "НаРукиАгент" (На руки).
Назначение: для отображения суммы агентского вознаграждения выдаваемого агенту от суммы данного счета.
Заполнение: в процедуре обработки событий по событию "После обновления" для поля "Агент_процент_1" и поля "Агент_процент_2".
Источник записей: аналогичное поле в исходной таблице.
17) "КурсДоллара" (Курс $).
Назначение: для отображения сегодняшнего курса доллара.
Заполнение: ввод с клавиатуры (пока).
Источник записей: аналогичное поле в исходной таблице.
Поле392
18) "Поле392" (Сумма в $).
Назначение: свободное поле для отображения суммы агентского вознаграждения выдаваемого агенту от суммы данного счета в долларах.
Заполнение: =[ВознагрАгент]/[КурсДоллара].
19) "СуммаСНакоплением".
Назначение: свободное поле для отображения общей суммы заказов проданных вышеуказанным агентом в долларах.
Заполнение: в процедуре обработки событий по событию "После обновления" для поля "КодАгента".
20) "КодЗаказчика" - скрытое поле.
Назначение: главное связующее поле по для форм Подчиненная1 и Основная.
Заполнение: автоматически .
Источник записей: аналогичное поле в исходной таблице.
Примечание: не удалять.
б) Флажки.
1) "ВыпискаНакладной" и "ВыпискаАктов".
Назначение: отметка о выписке актов и накладных при покупке системы.
Заполнение: по процедуре обработки события для кнопки "Кнопка174" в форме Основная.
Источник записей: аналогичное поле в исходной таблице.
2) "ОплатаСчета".
Назначение: отметка об оплате текущего счета.
Заполнение: ввод с клавиатуры.
Источник записей: аналогичное поле в исходной таблице.
Примечание: в процедуре обработки событий по событию "После обновления" для данного поля свойству Visible формы Подчиненая1.2 присваивается значение True или False в зависимости от факта оплаты счета (листинг 3.29).
3) "ВнесениеВАО"(Внесение в авансовый отчет). - скрытое поле
Назначение: отметка о внесение суммы по текущему счету в авансовый отчет.
Заполнение: по процедуре обработки события для кнопки "Кнопка347" в текущей форме.
Источник записей: аналогичное поле в исходной таблице.
в) Группы.
1) "Группа337".
Назначение: переключение между информацией о счете и информацией о заказах, входящих в счет.
Примечания: * автоматическое вычисление следующего номера накладной (поле "НомерНакладной"в текущей форме) и счета-фактуры (поле "НомерСчетаФактуры" в форме Подчиненая1.3) в процедуре обработки событий по событию "После обновления" для данной группы (листинг 3.30).
г) Кнопки. (для кнопок процедуры обработки событий вызываются по событию "Нажатие кнопки")
1) "Кнопка322", "Кнопка323", "Кнопка324", "Кнопка325".
Назначение: для перехода по записям для текущей формы (счета для данной организации). Реализация с помощью мастера.
Примечания: * по процедурам обработки событий для данных кнопок происходит очистка содержимого временных таблиц "НаВыпискуСчета" и "НаВыпискуНакладной" (листинг 3.31).
2) "Кнопка347".
Назначение: для занесения данных по текущему счету в авансовый отчет (листинг 3.32).
Примечания: * отладить возникновение ошибок и тестировать, тестировать, тестировать.
3) "Кнопка368".
Назначение: для удаления данных по текущему счету из авансового отчета (листинг 3.33).
Примечания: * пользоваться аккуратно.
Форма "ПросмотрSUBSUB".
а) Поля.
1) "КодСистемы" (Система).
Назначение: для выбора и отображения системы, на которую будет оформлена запись в счете.
Заполнение: выбор из списка.
Источник записей: аналогичное поле в исходной таблице.
Примечание: *нужно ли позволять выбор и ввод в этом и следующих полях, кроме поля "НомерДистрибутива"
2) "Код" (Тип системы) - поле со списком.
Назначение: для выбора и отображения типа системы, на которую будет оформлена запись в счете.
Заполнение: выбор из списка.
Источник записей: аналогичное поле в исходной таблице.
3) "СпецвыпускИлиНет" - флажок. (Спецвыпуск).
<< Пред. стр. 4 (из 12) След. >>