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

Высказывание своих предложений, соображений, поздравлений и т.д.

Модераторы: m0p3e, edward_K, Модераторы

Ответить
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

В управлении договорами можно использовать в формулах константы, например, &DOCDATE.
Можно ли, и если можно, то как, там-же получить доступ к другим полям документа (или к полям записи в базе данных, соответствующей этому документу)? Например, хочется получить доступ к датам "с" и "по".
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

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

Сообщение Deinis »

Если честно - ничего не понятно. Ты напиши задачу, что сделать нужно... Полей в документах и записей в БД великое множество, для чего тебе это нужно? В какой операции? ???
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

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

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

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

Сообщение Deinis »

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

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

Удачи!
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

Можно немного подробней о пункте 2 (Написать свой собственный идентификатор, который тебе будет выдавать нужную цифру.) - хотя бы ссылку на документ, где об этом можно прочитать.
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

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

Сообщение Deinis »

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

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

Доку я выслал, а примеры можешь посмотреть на этом сайте в разделе "Опыт" (выложены непосредственно разработчиком, ответственным за эту разработку). Если что - стучи в аську.
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

Спасибо, дока по TXO API у меня есть, и TXO API я использую, речь не об этом - как я уже писал выше, мне это нужно не в TXO, а в формуле, по которой расчитывается цена в "Управлении договорами", а это по-моему не есть TXO, вот в том и проблема.
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

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

Сообщение Deinis »

Тогда объясни понятно, что ты хочешь сделать.
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

Нескромный вопрос - ты с модулем "Управление договорами" работал?
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

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

Сообщение Deinis »

Нескромный ответ - да, работал.
andreyd
Сообщения: 6
Зарегистрирован: 29 мар 2005, 17:49

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

Сообщение andreyd »

В общем, безотносительно к модулям: если войти в режим редактирования каталога услуг, то там есть поле "шаблон", а вот при редактировании этого шаблона в формулах можно использовать функции и системные константы. Вот там я хотел бы использовать поля документа, в котором выбрана эта услуга или свои собственнописаные функции.
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

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

Сообщение Deinis »

Теперь понятно, что ты хочешь.
Нет, с рассчетными услугами (для которых используется поле "Шаблон") мы не работаем. По-крайней мере я с таким не сталкивался.
Ответить