#0
by sidalexsandr
Функция на которую ругается 1с определена в модуле объекта (документ) выше процедуры из которой вызывается эта функция. 1с выдает ошибку: {Документ.Ведомость.МодульОбъекта(57,8)}: Процедура или функция с указанным именем не определена (РасчетТребКолТов) ТЗ = <<?>>РасчетТребКолТов(ДанныеЗаполнения.Ссылка); (Проверка: Толстый клиент (обычное приложение))
#3
by sidalexsandr
Подскажите теперь правильно ли я сделал. Написал на сервере выполнить запрос и выгрузить его в таблицу значений, а уже из таблицы значений буду брать на клиенте данные и заполнять документ ?
#7
by Mort
1. Убрать директивы. Или это финт ушами для толстого клиента? 2. Функция РасчетТребКолТов получает параметр. Это тогда зачем:
#10
by sidalexsandr
Подскажи про директивы. Что не так? Я написал директиву &НаСервере для того чтобы запрос выполнился на сервере и выгрузился в Таблицу значений. А дальше обрабатываю всё на клиенте.
#11
by Mort
Это модуль объекта. На стороне тонкого клиента его тупо не существует. Посему директива &НаКлиенте тупо сделает процедуру невидимой в режиме тонкого клиента. А что такое на серверебезконтекста в модуле объекта, я вообще сказать затрудняюсь. Короче толк от директив в модуле объекта можно получить только занимаясь сурьезным онанизмом с вариантами работы в разных режимах.
#13
by sidalexsandr
Без контекста вот нашел &НаКлиенте (&AtClient) — определяет клиентскую процедуру (функцию); &НаСервере (&AtServer) — определяет серверную процедуру (функцию); &НаСервереБезКонтекста (&AtServerNoContext) — определяет серверную процедуру (функцию), исполняемую на сервере вне контекста формы. Переменные не могут быть внеконтекстными. В таких методах недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных методов. При вызове этих методов не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных методов позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры из среды клиентского приложения; &НаКлиентеНаСервереБезКонтекста (&AtClientAtServerNoContext) — определяет процедуру (функцию), исполняемую в модуле формы на клиенте и на сервере, не имеющую доступа к контексту формы, данным формы, переменным, но имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно. Сама процедура (функция) доступна для клиентский, серверных контекстных и неконтекстных процедур и функций модуля формы. Из серверных внеконтекстных методов формы допускается вызов серверных методов общих модулей; &НаКлиентеНаСервере (&AtClientAtServer) — определяет процедуру (функцию), исполняемую в модуле команды, выполняемую на клиенте и на сервере, имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно, не имеющую доступ к переменным. Сама процедура (функция) доступна для клиентских серверных процедур и функций модуля команды. Клиентская процедура (функция) исполняется в среде клиентского приложения. В такой процедуре доступен клиентский контекст формы и вызовы любых процедур модуля. Серверная процедура (функция) исполняется в среде серверного приложения. В такой процедуре доступны данные формы, доступен серверный контекст формы и вызовы серверных и серверных внеконтекстных процедур модуля. При вызове такой процедуры данные формы будут передаваться с клиента на сервер и обратно (по окончанию вызова). Серверная процедура (функция), исполняемая вне контекста формы, (внеконтекстная) исполняется в среде серверного приложения. В такой процедуре (функции) недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных процедур (функций). При вызове этих процедур (функций) не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных процедур (функций) позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры (функции) из среды клиентского приложения. Отсутствие директивы компиляции перед процедурой (функцией) означает использование директивы по умолчанию. Директивой по умолчанию является &НаСервере. Не допускается использование нескольких директив компиляции перед одной процедурой (функцией). Не допускается наличие одноименных процедур (функций), отличающихся только директивами компиляции. В модуле управляемой формы допускается использование инструкций препроцессору. Рекомендуется использовать инструкции препроцессора только внутри процедур (функций). Для понимания результата при "пересечении" инструкциями препроцессора границ процедур (функций) следует учитывать, что обработка инструкций препроцессора выполняется до обработки директив компиляции. В модуле команды предопределенная процедура-обработчик ОбработатьКоманду должна предваряться директивой &НаКлиенте, так как выполнение команды происходит в клиентском приложении. Модуль формы В модуле формы доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаСервереБезКонтекста, &НаКлиентеНаСервереБезКонтекста. Модуль команды В модуле команды доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаКлиентеНаСервере. Общий модуль В общем модуле доступны директивы компиляции – &НаКлиенте, &НаСервере.
#14
by Mort
Ну а я о чем. Про модуль объекта в справке ни слова, несмотря что эффект от директив в нём есть. Потому что не нужны они в нем.
#15
by sidalexsandr
Из справки выше: Отсутствие директивы компиляции перед процедурой (функцией) означает использование директивы &НаСервере.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям
Похожие вопросы 1С
- v8 строка подключения V8.Connect
- Волшебнику и всем кто поможет по теме "v8 УРБД на v8 за четыре шага"
- v8: при v8 = Новый COMОбъект("V8.Application") дает ошибку ..
- v8: Не могу подключиться из V8 к V8
- v8: есть ли аналоги openconf для 1с v8
- v8: Как удалить 1С v8 ?
- Процедура или функция с указанным именем уже определена
- v8: Процедура или функция с указанным именем не определена (Очистить сообщения)
- Процедура или функция с указанным именем не определена (ПолучитьОбработку)
- (зуп 2.5 пл 8.3.8)Процедура или функция с указанным именем уже определена (СтрНачинаетсяС)
В этой группе 1С
- Список параметров табличного дока
- Рекурсия в СКД
- Учет подарочных сертификатов.
- Где описан алгоритм расчета сдельной зарплаты
- УФ. как перечитать данные объекта?
- Регистр накопления ПартииТоваровНаСкладахБухгалтерскийУчет
- Возврат НДФЛ резиденту, бывшему нерезидентом
- Конвертация Даты из 7.7 в 8
- УПП - ПКО на 50.02
- Почему зависает 1С, у всех в офисе?
- Редактирование печатных форм УТ 11
- Ввод нескольких значений в одно поле 1с 8.1
- 1С и штрихкод
- 1С 8.2, новая карточка Номенклатуры: установить реквизиты по умолчанию
- ЗуП Начисление северного коэффициента на квартальную премию
- КД 2.0 Ставка НДС из справочника в перечисление
- ут 10.3 - заполнить по ценам номенклатуры - проблема
- УТ 10.3 Клиент-банк, при загрузке удаляет документы
- v7: Как изменить значение поля в файле dbf и потом его записать?
- Как узнать код не записанного элемента справочника?