#0
by WED
По кнопке на форме элемента справочника вызывается процедура. В процедуре требуется осуществить запись текущего элемента:... Запись;...На это 1С ругается:Данная команда не может выполняться в формуле элемента диалога!Как можно обойти?v77.20.SQL.
#9
by WED
2 Ничего особенного, только вызов этой процедуры ПересчетЕё код:КонецПроцедуры;Вобщем смысл её таков:После изменений в элементе-владельце (в текущем элементе), нужно пересчитать некоторые значения в элементах подчиненного справочника "Ресурсы", а для этого надо сначала записать все эти изменения.. Вот запись изменений мне и не удается... Можно,конечно, сделать две кнопки "Запись" и "Пересчет", но как-то это не красиво.
#14
by WED
2 НЕ пойдет.Мне надо:1. Записать текущий эл.2. Пересчитать подчиненные.3. Поскольку подчиненные изменились - пересчитать одну цифру в текущем.4. Снова записать.Из-за п.4 #Записть в кнопке не пойдет.
#18
by WED
2 Пока никак - вперся с первоначальной записью.Еще момент: если вкнопке прописать формулу так: #Записать; Пересчетто процедура Пересчет НЕ ВЫЗЫВАЕТСЯ. Совсем.
#20
by WED
гм...мой 18ый относился к 16ому посту.2 А это-то здесь причем. Мне не надо закрывать форму. Мне надо осуществить запись элемента в процедуре, вызываемой по кнопке на его форме.
#22
by WED
2 А ты порядок действий в посмотри внимательно, и поймешь почему парюсь - мне надо записать, а потом пересчитать, а потом опять записать. А ты предлагаешь: пересчитать, записать. Потому что в ПриЗаписи выполняется ПЕРЕД записью данных.
#23
by Самый умный
кстати, в тебе правильно сказали: Спр.ИспользоватьВладельца(ТекущийЭлемент);и еще: зачем тебе все-таки записывать ДО вызова пересчета?
#24
by Болван
Не тупи твой порядок действий1. Записать текущий эл.2. Пересчитать подчиненные.3. Поскольку подчиненные изменились - пересчитать одну цифру в текущем.4. Снова записать.получиться такой1. Пересчитать подчиненные.2. Поскольку подчиненные изменились - пересчитать одну цифру в текущем.3. Снова записать.И НЕ НАДО 2 РАЗА ЗАПИСЫВАТЬ!!!! что сократит также время выполнения модуля
#26
by Пух
2 Что я не так делаю?Создал элемент справочника. Повесил кнопку с ПересчетВ модуле элемента:Процедура ПересчетКонецПроцедурыВсе записывает, все меняет ни на что не ругается...
#27
by Самый умный
я тоже про это уже думал... скорее всего у WED'а что-то все-таки еще в формуле элемента диалога записано....
#28
by Болван
1:0 ступил , вот и я говорю пусть весь код покажет , млят гдето накалывают не пойму где , должен же записывать полюбому
#29
by bsg
Два в одном - два развода на одной странице.Есть ли возможность спозиционироваться программно в форме списка?Данная команда не может выполняться в формуле элемента диалога...
#34
by WED
2 ИМЕННО! Мне подчиненные и надо пересчитать, чтобы рассчитать их сумму для нового количества в текущем. А вот новую (рассчитанную при пересчете) сумму подчиненных надо занести в текущий. Вот и получается, что надо записать изменения в текущем (чтобы при пересчете подчиненных брались новые значения владельца), пересчитать подчиненные (и получить новую сумму подчиненных),(занести новую сумму в текущий) и опять записать.Весь этот гемморой из-за того, что в процедуре пересчета подчиненных используются данные не непосредственно из переданного контекста, а переданный контекст (элемент-владелец) находится в справочнике и данные берутся из него. Такая беда из-за того,что процедура пересчета вызывается из множества мест и достаточно универсальна.Отсю.да рождается второй вариант решения данной проблемы: Переделка всех процедур пересчета. Иерархия подчинения справочников довольно-таки не малая: 1-3-2-2 (к главному подчиняются три справочника, а им в свою очередь еще два, а к ним еще два).
#35
by WED
Народ. Никакого развода. Есть форма элемента. На ней кнопка "Применить", в формуле которой только вызов процеджуры Пересчет.КонецПроцедурыглРасчетРесурсаРасценки(Спр) - процедура пересчета подчиненного элемента.глРасчетРасценки(Контекст) - процедура пересчета текущего.Всё.
#38
by Пух
Т.е. Процедура Пересчет с закоментированными Записать в начале и конце процедуры отрабатывается нормально?
#39
by WED
Блин! Долбанный диал-ап :( Столько написал и в пустую.Короче: Нашел я проблему.. как ни смешно, но на мысль натолкнул ПУХ, со своим "что я делаю неправильно".... Вобщем начал от открытия формы рыть... и нарыл вот что: Если в процедуре ПриОткрытии есть Записать или вызов процедуры с Записать, то получите выше указанную ошибку и совсем не важно, что НИ В ОДНОМ из элементов формы НЕТ вызова этой процедуры...
#41
by MetaEditor
Записать работает в контексте формы. При открытии - формы ещё нет = полтора часа моз#######ва...
#42
by WED
2 Да понятно, что при открытии Записать не может работать, а ты попробуй сообрази, если 1С ошибку пишет про формулу элемента формы....
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- Необъяснимая ошибка метода "Записать()" или ошибка в ДНК?
- Данная команда не может выполняться в формуле элемента диалога!
- Данная команда не может выполняться в формуле элемента диалога!
- Странная ошибка "ошибка формата потока" с вылетом из сеанса
- Ошибка выполнения запроса "Ошибка при выполнении операции над данными: Ошибка SQL: Де
- v7: Ошибка СУБД.Внутренняя ошибка dbeng 8
- При отправке сообщения произошла ошибка : Общая ошибка MAPI
- v8: Ошибка СУБД. Внутренняя ошибка компоненты DBENG8 при обмене данными
- Ошибка при попытке выгрузить данные из УТ в БП. интересная необычная ошибка
- Ошибка при вызове web-сервиса 1C 8.3 (Внутренняя ошибка. Ошибка инициализации б)
- v7: Данная команда не может выполняться в формуле элемента диалога!
- Ошибка при вызове метода контекста (Записать) Ошибка при выполнении файловой опе
В этой группе 1С
- Пользователи в 1С 8.0 SQL
- 1С SQL Как реализовать или 1С'ка тормозит...
- Универсальная обработка для импорта банковских выписок
- 1C SQL : загрузка процессоров падает
- Как сравнить два регистра в 8
- А как изменить название колонки в ТЗ?
- Как программно создать подчиненный элемент?
- пример экспорта и импорта счет фактур
- Помогает ли реально упаковка базы? и стоит ли вообще её делать?
- Глюки книге доходов-расходов в УСН 139?
- Разница в способах подключения внешней компоненты? (+)
- Хелп! Срочно!!! Шрифты меню в терминальной 1С
- ввод в эксплуатацию ОС и материалов для него - как правильно?
- Как програмно перенести номенклатуру в другую группу
- v 8.0 Как программно добавить строку в таб.часть справочника?
- Долгий пересчет итогов.
- АвтоВремяНачалоДня() чегой-то туплю
- 1с v8 не содержит маркера кодировки UTF8
- Камин. Как использовать табель?
- Защита конфигурации 1С с помощью WinCrypt. автора Федор aka DeFor