Инструкция, как правило, просто вырезает кусок кода перед тем как он будет передан на компиляцию, а с директивой программа точно знает что такая функция все же есть, но будет выполнена на стороне сервера клиента.

Код Икс Пи ☆ Центр автоматизации, сопровождения и поддержки
- Препроцессор — специальная программа, которая перерабатывает программный код из «вида» удобного для работы программиста, в «вид», удобный для работы копилятора;
- Компилятор — специальная программа, которая умеет перерабатывать программный код в «машинный» код — выполняемый непосредственно процессором компьютера;
- Интерпретатор — специальная программа, которая вместо компилирования кода в машинный код для процессора, выполняет его самостоятельно. Интерпретатор с предварительной компиляцией — компилирует программу не в машинный код, а в специальный «байт-код» удобный для последующего выполнения интерпретатором.
О том как код написанный программистом превращается в байт код интересно описано в статьте на хабре https://habr.com/ru/post/489392/
Рассмотрим конкретный пример. Например у нас запущена конфигурация в режиме толстого клиента (без управляемых форм). В модуле объекта мы сделали предупреждение о нехватке остатка на складе (не стоит так делать в реальных базах).
В модуле попытаемся создать документ с превышением остатка:
Затем в какой нибудь обработке вызовем эту экспортную процедуру, в файловом режиме ошибки не будет и все выполняется как обычно (следствие того что сервер эмулируется платформой, в этом же приложении), но как только мы запустим базу в клиент-серверном варианте, то увидим следующее
Как поступить если необходимо часть модуля выполнять только там где он доступен, а остальной код трогать не хочется? Надо использовать инструкции препроцессору, т.е. объяснить программе что кусочек кода должен присутствовать\исполняться только тогда когда он может быть выполнен.
Инструкции могут включать целиком процедуру или несколько процедур
Заметки студента: 1С конфигурации Подрядчик строительства 4 ред. 2.0. Создаем роль с правами только на чтение
Директивы комплиляции
Директивы появились вместе с управляемыми формами. Дело в том что при создании управляемой формы модуль формы компилируется одновременно и на сервере и на клиенте, но в клиентском варианте не будут присутствовать процедуры перед которыми отсутствует ключевое слово «..Клиенте..», для серверной копии модуля аналогично.
- &НаКлиенте — определяет клиентскую процедуру (функцию).
- &НаСервере — определяет серверную процедуру (функцию) с контекстом.
- &НаСервереБезКонтекста — определяет серверную процедуру (функцию) без контекста.
- &НаКлиентеНаСервереБезКонтекста — определяет процедуру (функцию), исполняемую в модуле формы на клиенте и на сервере.
- &НаКлиентеНаСервере — определяет процедуру (функцию), исполняемую в модуле команды, выполняемую на клиенте и на сервере.
Без контекста — это означает без доступа к данным формы.
Директивы &НаКлиенте и подобные принципиально отличаются от инструкций препроцессору. Инструкция, как правило, просто вырезает кусок кода перед тем как он будет передан на компиляцию, а с директивой программа точно знает что такая функция все же есть, но будет выполнена на стороне сервера\клиента.
Примеры использования директив, с этим сложностей нет, в любой управляемой форме, любая процедура снабжена этой директивой. Если директиву не указать то будет считаться что она будет присутствовать на сервере, но во избежании путаницы лучше всегда явно указать где, НаКлиенте или НаСервере, будет скомпилирована функция.
exe,нам покажет что найдена Командная строка и, щелкнув по ней правой клавишей мыши, выбрать Запуск от имени администратора.

Ошибка при вызове метода контекста (Записать)
тУникИндификатор-это код и в пвх и в справочнике?? — поставили задачу, чтобы номера совпадали,что мы знали что мы это туда занесли. хотя сейчас сам задумался зачем, пойду ка уточню
Спасибо. с ссылкой заработало. Может не сочтёте за труд пояснить почему так? Спасибо
(24) ну есть же этот элемент уже, НовЭлемПВХ.Ссылка, зачем второй раз его искать?
Промокоды на Займер на скидки
а понятно при создании документа появляется этот елемент, не понимаю как только соотносится о владелец к ссылке. Надо наверное просто запомнить что это так. Спасибо
Пользователь не знает, чего он хочет, пока не увидит то, что он получил.
Э. Йодан
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
НовЭлемДСпХ.Владелец = НовЭлемПВХ.ссылка;
В данной транзакции уже происходили ошибки 1С 8.3 как исправить?
Странные ошибки «Ошибка при вызове метода контекста»
Но это не совсем получается…использовал ТочкуОстанова, начал проверять:
строка «Ссылка.ГрафикТО.Пустая()» выдает: Значение (Истина), Тип (Булево); строка Ссылка.ГрафикТО.Ссылка.ПолучитьОбъект() выдает: Значение: (см. тему поста) Скажите как быть в данной ситуации?
(0) если битая ссылка, то она не пустая и ПолучитьОбъект тоже выдаст ошибку
(2) да не должна бы..я и с имеющимися пробовал и новые документы создавал — эффект один
(5) значит в модуле объекта документа ГрафикТО какая-то хрень написана. Найдите автора этого модуля.
(8) ну покажите самый низ модуля объекта этого графика, там никакой туфты нет?
вообще фактически он ошибку не выдает, но и при проведении АктаТО в ТЧ документа ГрафикТО он не заполняет соответствующие колонки, в них как было пусто так и есть

Если (без НЕ) Ссылка.ГрафикТО.Пустая() Тогда Граф = Ссылка.ГрафикТО.ПолучитьОбъект(); тогда да ругается что: Ошибка при вызове метода контекста ПолучитьОбъект() и также пишет: Элемент не выбран
Наведи порядок в своей работе используя конфигурацию 1C «Управление IT-отделом 8»
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку «Обновить» в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
В Попытке-Исключение начинается обработка операции, которая также должна быть выполнена в транзакции, которая, в свою очередь, может быть явной или неявной создается в момент записи объекта.

1C Ошибка При Вызове Метода Контекста Записатьjson
Рассмотрим основные ошибки, которые могут возникать при проведении различных документов в программе 1С-Рарус: Ломбард 4.
1. Ошибка при вызове метода контекста (Записать): Запись не верна! Не заполнен счет дебета
Данное сообщение может возникать при проведении кассовых документов на закладке «Документы»:
Сообщение возникает в том случае, если в регистре сведений «Счета учета расчетов с контрагентами» не заполнен счет расчетов с покупателем (пункт меню «Справочники – Контрагенты – Счета расчетов с контрагентами»):
Счета учета расчетов можно указать для определенной организации, контрагента или группы контрагентов, для отдельного договора или вида расчетов. Для этого необходимо создать соответствующее число записей в регистре сведений:
Можно разделить счета учета расчетов с контрагентами по типу контрагентов, например, для залогодателей и прочих контрагентов. Для этого необходимо заполнить поле «Контрагент» (при этом можно указать как конкретное юридическое или физическое лицо, так и группу контрагентов):
2. Поле «Счета учета расчетов за хранение»/«Счет учета расчетов за кредит»/«Счет учета расчетов за просрочку» не заполнено
Сообщения могут возникать при проведении документа «Начисление процентов»:
При возникновении подобных сообщений можно указать необходимые счета непосредственно в каждом документе «Начисление процентов» на закладке «Счета учета расчетов».
Для того, чтобы счета учета расчетов за каждый вид процентов заполнялись автоматически, в Учетной политике по Ломбарду (меню «Главное – Настройки по Ломбарду – Учетная политика») на закладке «Регламентированный учет – Счета учета расчетов») необходимо заполнить счета учета расчетов:
Сообщение может возникать при проведении документа «Начисление процентов»:
Данное сообщение говорит о том, что в документе «Начисление процентов» на закладке «Счета учета расчетов» не заполнены значения Счетов доходов от кредита, хранения и просрочки. Их можно заполнить непосредственно при проведении документа.
Для того, чтобы указанные счета заполнялись автоматически, необходимо заполнить соответствующие данные в специальном разделе «Счета расчетов по залоговому билету» (меню «Ломбард – См.также – Счета расчетов по залоговому билету»):
Счета учета доходов при необходимости можно разделить по организациям и контрагентам/группам контрагентов.
Сообщение может возникать при проведении документа «Операция по залогу»:
Данное сообщение возникает тогда, когда в настройках Схемы кредитования выбран вариант момента получения процентов «Взимать сразу», а на закладке «Счета учета» не заполнены данные о счетах учета доходов и расчетов по каждому виду начислений:
Для автоматического заполнения данных счетов необходимо настроить счета учета расчетов в Учетной политике по ломбарду и счета расчетов по залоговому билету, описанные в п. 2 и 3.
Ошибка при вызове метода контекста eof 1c
Микрофинансирование → Микрокредиты → Специальные предложения → Скачать файлы → Обзор Быстроденег → Предмет договора → Ответственность сторон → Отличные наличные→ Экспресс займы
💥Принимайте участие в опросе и получайте бесплатную консультацию
Кредиты в регионах: Москва · Санкт-Петербург · Новосибирск · Екатеринбург · Казань · Нижний Новгород · Омск · Самара · Краснодар · Саратов
Спасибо!
В ближайшее время мы опубликуем информацию.
detector