Страница 1 из 1

Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 12:30
andreyd
В управлении договорами можно использовать в формулах константы, например, &DOCDATE.
Можно ли, и если можно, то как, там-же получить доступ к другим полям документа (или к полям записи в базе данных, соответствующей этому документу)? Например, хочется получить доступ к датам "с" и "по".

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 14:03
Deinis
Если честно - ничего не понятно. Ты напиши задачу, что сделать нужно... Полей в документах и записей в БД великое множество, для чего тебе это нужно? В какой операции? ???

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 14:54
andreyd
В данном конкретном случае я хочу цену за день умножить на количество дней, в течение которых действует документ, но вопрос даже не в данном конкретном случае, а в принципиальной возможности сделать это. В TXO я могу написать VIP и получить любое интересующее меня значение, здесь же я могу только выбрать из списка то, что там есть. Вот вопрос, собственно: можно ли при формировании формул каким-то образом обращаться к полям текущего документа, а не только к имеющимся в списке константам и функциям? То, что вызвать любую функцию (например, CalcDaysBetweenDates), это я знаю, а как обратиться к полям документа (и где взять их названия)?

И еще вопрос про договоры: у нас ситуация, когда в договоре написано - услуга стоит 9 руб. за час с учетом количества дней, в течение которых действует услуга количество услуг = 1. То есть, в ДО должна пойти одна услуга, а общая сумма - за весь период. Как это можно сделать?

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 15:50
Deinis
Может показаться, что я придираюсь к словам, но все же:
>> В TXO я могу написать VIP и получить любое интересующее меня значение, здесь же я могу только выбрать из списка то, что там есть.

Где это "здесь" ?? ??? Ты ведь так до сих пор и не написал ГДЕ. И не написал ЗАЧЕМ. Грубо говоря - если тебе нужно что-то перемножить - зайди в документ, посмотри и умножь на калькуляторе.
Из того, что ты противопоставляешь слова "в ТХО можно ... а вот здесь ..." можно подумать, что "здесь" - это не в ТХО. Однако думаю, что ты имеешь все же формулы в ТХО. Я прав??? Если вопрос звучит так: "Можно ли при ТХО разноске документа обращаться к произвольным полям БД?" - ответ - "нет". Ты можешь:
1. Использовать стандартные идентификаторы (обычно отождествленные с конкретными полями в БД).
2. Написать свой собственный идентификатор, который тебе будет выдавать нужную цифру.

Удачи!

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 16:21
andreyd
Можно немного подробней о пункте 2 (Написать свой собственный идентификатор, который тебе будет выдавать нужную цифру.) - хотя бы ссылку на документ, где об этом можно прочитать.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 18:13
Deinis
Это то самое, что ты сам написал:
"В TXO я могу написать VIP и получить любое интересующее меня значение". Или ты имел в виду что-то другое?

Ты пишешь интерфейс, в котором можно получить нужные тебе цифры. Затем компилишь его в ресурсник. После чего настраиваешь шаблон в ТХО так, чтобы он использовал твой интерфейс. Обо всем этом написано в доке: Руководство пользователя ТХО API. Реализовано все это дело только начиная с версии 5.82. Есть сведения, что в версии 5.83 это дело не работает: не знаю - у нас 5.82 и пашет все, что я написал.

Доку я выслал, а примеры можешь посмотреть на этом сайте в разделе "Опыт" (выложены непосредственно разработчиком, ответственным за эту разработку). Если что - стучи в аську.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 18:58
andreyd
Спасибо, дока по TXO API у меня есть, и TXO API я использую, речь не об этом - как я уже писал выше, мне это нужно не в TXO, а в формуле, по которой расчитывается цена в "Управлении договорами", а это по-моему не есть TXO, вот в том и проблема.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 17 июл 2003, 19:58
Deinis
Тогда объясни понятно, что ты хочешь сделать.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 18 июл 2003, 10:48
andreyd
Нескромный вопрос - ты с модулем "Управление договорами" работал?

Re: Доступ к полям записи БД из экранной формы

Добавлено: 18 июл 2003, 11:45
Deinis
Нескромный ответ - да, работал.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 18 июл 2003, 12:54
andreyd
В общем, безотносительно к модулям: если войти в режим редактирования каталога услуг, то там есть поле "шаблон", а вот при редактировании этого шаблона в формулах можно использовать функции и системные константы. Вот там я хотел бы использовать поля документа, в котором выбрана эта услуга или свои собственнописаные функции.

Re: Доступ к полям записи БД из экранной формы

Добавлено: 19 июл 2003, 15:12
Deinis
Теперь понятно, что ты хочешь.
Нет, с рассчетными услугами (для которых используется поле "Шаблон") мы не работаем. По-крайней мере я с таким не сталкивался.