21.04.2005, 17:32 | #1 |
Участник
|
Здравствуйте!
Пишу следующий код: GenJournal.RESET; GenJournal.SETRANGE("Journal Template Name", 'ОБЩИЙ'); GenJournal.SETRANGE("Journal Batch Name", 'ДВИЖТОВ'); GenJournal.INIT; GenJournal.VALIDATE ("Journal Template Name", 'ОБЩИЙ'); GenJournal.VALIDATE ("Journal Batch Name", 'ДВИЖТОВ'); ... GenJournal.VALIDATE ("Line No.", CurLineNo * 10000); GenJournal.INSERT (TRUE); где GenJournal : Record "Gen. Journal Line" (#81) Как сделать чтобы следующий Document No. ставился автоматически? В каком триггере или процедуре устанавливается новый номер записи финансового журнала? Кстати, где устанавливается Line No.? Я сделал счетчик, но хотелось бы воспользоваться стандартными средствами. Заранее спасибо. |
|
21.04.2005, 17:46 | #2 |
NavAx
|
Номер документа устанавливается в функции SetUpNewLine таблицы 81, судя по всему.
"Line No." устанавливается через свойство AutoSplitKey формы 39. Это навскидку, глубоко не копал.
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
21.04.2005, 18:02 | #3 |
Участник
|
Цитата:
Сообщение от Дуд
"Line No." устанавливается через свойство AutoSplitKey формы 39.
Как устанавливается новый номер вроде понятно. Спасибо. |
|
22.04.2005, 08:51 | #4 |
NavAx
|
При программном - "Line No." += 10000;
Почему именно 10000 - вопрос к компании Navision (если такая есть еще). Так уж у них повелось
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
22.04.2005, 11:16 | #5 |
Участник
|
Цитата:
GenJournal.VALIDATE("Journal Template Name", 'ОБЩИЙ');
GenJournal.VALIDATE("Journal Batch Name", 'ДВИЖТОВ'); за константы в коде предлагаю расстреливать на месте... |
|
22.04.2005, 15:04 | #6 |
Участник
|
Цитата:
Сообщение от SVG
за константы в коде предлагаю расстреливать на месте...
|
|
22.04.2005, 15:09 | #7 |
Участник
|
Нестроковые - это какие например?
|
|
22.04.2005, 15:16 | #8 |
Участник
|
Типа Integer, например. Такое часто бывает, что какая-нибудь цифра 4 во всех местах кода, где она используется, означает одно и то же - количество членов некоторой группы, например. Было бы логично задекларировать константу GroupMembersNum := 4;
|
|
22.04.2005, 15:18 | #9 |
NavAx
|
Вообще более целесообразно количество членов группы хранить где-нибудь в настройках, а то и вовсе оно является, скажем, COUNT от какой-нибудь таблички
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
22.04.2005, 15:22 | #10 |
Участник
|
Все равно не понял о чем речь. Если можно - пример.
Вообще все констаты надо выносить в настройки. Создавать поле в таблицах 311-313 и иже с ними, выводить на соотв. формы и использовать везде где нужно. Процедурное программирование рулит... |
|
22.04.2005, 15:37 | #11 |
NavAx
|
Собственно, в Навыжне константы используются для вывода сообщений об ошибке, конфирмов и прочих диалогов. Поэтому только текстовые константы и предусмотрены...
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
22.04.2005, 15:47 | #12 |
Участник
|
Это (константы в сообщениях) кстати сделано с одной целью - добиться мультиязычности. К правилам хорошего программирования это имеет отдаленное отношение....
ЗЫ прикольно, сидим с ДУДом на расстоянии метра друг от друга и в инете переписываемся... 21й век емае... |
|
22.04.2005, 15:50 | #13 |
NavAx
|
SVG, я тебе ща еще и позвоню для полного комфорта
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
25.04.2005, 10:52 | #14 |
Участник
|
С количеством членов группы пример неудачный - согласен. Другой пример - число pi (правда, она скорее Decimal, нежели Integer). Или любая другая вселенская константа, которая может понадобиться при каких-нибудь статистических расчетах - как с этим быть? Я хочу сказать, что вряд-ли можно ВСЕГДА обойтись без нетекстовых констант.
|
|
25.04.2005, 11:21 | #15 |
NavAx
|
Заведите табличку "Вселенские константы" с полями "Ключ", "Пи", "е", "постоянная Планка" и "скорость света в вакууме" и пишите свои константы туда.
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|
25.04.2005, 11:54 | #16 |
Moderator
|
Цитата:
за константы в коде предлагаю расстреливать на месте...
|
|
25.04.2005, 11:59 | #17 |
Участник
|
Потому что через месяц бухалтер захочет чтоб у него эти проводки были в отдельном разделе с отдельной нумерацией, и программист будет лопатить все приложение в поисках этих своих "ОБЩИХ"
Хорошо если это будет тот же программист, который написал это - он и знает где писал, и вообще сам накосячил - сам исправляй. А если другой? Что ему - по тулкиту все искать и править? А давайте еще отчетов слабаем с десяток на этом финжурнале? Или давайте во всех счетах-фактурах выводить ИНН константой... Или это типа развод на пустой флейм? |
|
25.04.2005, 12:12 | #18 |
Участник
|
Больщое спасибо! Собственно, это мне и нужно былознать - какой способ наиболее естественен для Navision. Есть, конечно, более простой способ:
pi := 3.1415....; Правда, никаких спецификаторов const не предусмотрено, но, я думаю, покатит. |
|
25.04.2005, 12:15 | #19 |
Участник
|
ну вселенские константы можно и не забивать в настройки я думаю... они точно никогда не изменятся - и не со слов бухалтера, а это типа основы мироздания
а вот раздел и код шаблона журнала, код какойнить группы в товаре например - типа при учете ЗПр если товар бренд PANAS, то проверить цену на соотв. чемунить... - это все точно в настройки. |
|
25.04.2005, 12:17 | #20 |
NavAx
|
Если это самое pi нужно только в одном объекте - можно и так.
А если в десятке объектов (константа-то Вселенская!), то опять же проще в табличку записать.
__________________
"Моей лошадке ядрышком полмордочки снесло..." А.В.Суворов, письма к дочери |
|