Все технические форумы на одном сайте Удобный поиск информации с популярных форумов в одном месте
Вопрос: Автоматическое заполнение поля "Комментарий" документа "заказ покупателя"

Всем здравствуйте!
Помогите, пожалуйста, решить такую задачку:
С сайта (на Битриксе) выгружаются заказы покупателя, необходимые мне данные из заказа записываются в свойства этого заказа. Нужно вытащить часть этих свойств и записать одной строкой в поле "Комментарий" заказа. Например, есть свойства: ФИО, телефон, e-mail. Поле "Комментарий" должно выглядеть: № документа; ФИО; телефон; e-mail.
Процедура должна выполнятся при записи документа если документ имеет определенный префикс(ы) или заполнено свойство "Сайт".
пока все что смог осилить, это вытащить в таблицу нужные свойства по конкретному заказу (делал через консоль запросов):
Код 1C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
Запрос = Новый Запрос;
Запрос.Текст = 
"ВЫБРАТЬ
|   ЗначенияСвойствОбъектов.Свойство.Наименование,
|   ЗначенияСвойствОбъектов.Значение
|ИЗ
|   РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
|ГДЕ
|   (ЗначенияСвойствОбъектов.Свойство.Наименование = &ФИО
|           ИЛИ ЗначенияСвойствОбъектов.Свойство.Наименование = &Телефон
|           ИЛИ ЗначенияСвойствОбъектов.Свойство.Наименование = &ЭлПочта
|           ИЛИ ЗначенияСвойствОбъектов.Свойство.Наименование = &Комментарий)
|   И ЗначенияСвойствОбъектов.Объект = &Заказ";
 
Запрос.УстановитьПараметр("Телефон", );
Запрос.УстановитьПараметр("ФИО", );
Запрос.УстановитьПараметр("Комментарий", );
Запрос.УстановитьПараметр("Заказ", );
Запрос.УстановитьПараметр("ЭлПочта", );
Результат = Запрос.Выполнить();
Ответ:
Сообщение от Perceff
и еще не знаю как обратится к полю комментарий
Код 1C
1
Комментарий = "Неожиданно ДА?";
Сообщение от Perceff
и как получить номер документа, чтобы его также записать в поле комментарий
Код 1C
1
Комментарий = "Неожиданно ДА? И еще номер "+Номер+" и снова неожиданно ДА?";
Добавлено через 2 минуты
Сообщение от Perceff
Спасибо за подсказку, это конечно не совсем то
А кто вам сказал что я вообще собирался вам давать готовый алгоритм?

Я пытался заставить вас подумать что дальше делать с полученными переменными и видимо у меня это получилось =))

Добавлено через 2 минуты
Сообщение от Perceff
но меня смущает, что здесь как раз исключение при загрузке??
Пиши до условия на проверку загрузки
Вопрос: Оплачено по заказу 0 рублей

Здравствуйте!
Помогите разобраться.
УТ 11.2.3.124. Делаю документ "Заказ клиента".
После создаю на основе этого заказа "Реализацию товара"и документ "Поступление безналичных ДС". В структуре подчиненности эти два документа привязаны к заказу.
После всех этих действий в заказе висит надпись - Оплачено по заказу 0 рублей.
Формирую отчет "Задолженность клиентов" - там все пусто, то есть оплата проходит.

Что делаю не так? Как исправить?
Заранее спасибо!

Вложения:

  • Размер файла:
    15,9 КБ
    Просмотров:
    10
  • Размер файла:
    7,8 КБ
    Просмотров:
    10
  • Размер файла:
    18,1 КБ
    Просмотров:
    10
Ответ:
У Вас же в заказе К оплате 11.05, а оплачено 12.05
Вопрос: Перестал открываться журнал "Заказы поставщикам" 1С 8.3.10.2252 УТ 11.3.3.226 типовая

Здравствуйте! Возникла проблема с открытием журнала "Заказы поставщикам"
6 июня обновил платформу до 8.3.10.2252 - 1С в файловом режиме, сервер 1С не установлен, доступ через веб.
и конфигурацию до УТ 11.3.3.226 - конфигурация типовая, ничего не меняли,
после чего провел "Тестирование и исправление..." с параметрами "Очищать ссылки" и "Удалять объект"
В итоге 7 июня обнаружил, что перестал открываться журнал "Заказы поставщикам".

База полностью зависает, выключается только через диспетчер задач, при этом тестирование и исправление ошибок не выявляет.
К заказам поставщикам есть доступ через список заказов поставщикам, реестр торговых документов, через связанные документы.
Не работает только журнал заказы поставщикам, все остальное работает без проблем.
При попытке выгрузить через универсальный обмен появляется ошибка: "Объект не найден", после чего эта же ошибка появляется при тестировании и исправлении;
Проверка логической целостности. РегистрСведений.БезопасноеХранилищеДанных.Измерение.Владелец <Объект не найден> (27:9c19000acd2a604f11e74dea12c4023f)
Объект, на который ссылается значение, отсутствует. Очистка ссылки не удалась, т.к. нарушается уникальность индекса. Запись удалена.

Обновление и тестирование и исправление делал для двух баз, получил одинаковые проблемы. Во второй базе:
Проверка логической целостности. РегистрСведений.БезопасноеХранилищеДанных.Измерение.Владелец <Объект не найден> (26:9c19000acd2a604f11e74de4b268fec5)
Объект, на который ссылается значение, отсутствует. Очистка ссылки не удалась, т.к. нарушается уникальность индекса. Запись удалена.
Проверка логической целостности. РегистрСведений.БезопасноеХранилищеДанных.Измерение.Владелец <Объект не найден> (26:9c19000acd2a604f11e74de4b268fec6)
Объект, на который ссылается значение, отсутствует. Очистка ссылки не удалась, т.к. нарушается уникальность индекса. Запись удалена.

Это может быть связано с журналом заказы поставщикам?
Прошу помочь с этой проблемой, ко вторнику мне нужно все исправить.
Единственный альтернативный вариант это вручную внести все документы за 7, 8 и 9 июня, однако в будущем схожая проблема может возникнуть снова.
Лучше всего если опытный программист разберется в проблеме и почистит базы от ошибок. Конфигурации типовые. Прошу сообщить стоимость работы.
Ответ:
Обращайтесь Посмотрю удаленно.
Оплата по результату и я не беру больше, чем мне дают
Вопрос: Исчезли "Заказы Покупателей" и их данные в регистре накопления

Приветствую, Форумчане!

Снял базу данных (*.dt) с рабочей машины и установил у себя. Работал несколько дней, тестил, было намерение изменить некоторые отчеты.

Сделал копию отчета "Анализ Заказов Покупателей" в конфигураторе (нужно было его изменить). Вдруг обнаруживаю, что исчезли все данные по Заказам и соответственно исчезли все данные в соответствующем регистре накопления. Пусто, как не бывало.

Взял первоначальний исходник и попытался установить базу данных по новой. После загрузки данных тажа ситуация, хотя загрузка была осуществлена с первоначального источника, с которым я и работал до этого...

Попробовал перегрузить ПК, не помогла. Попробовал установить эту базу на другой машине - тоже всё пусто...
Снял еще раз базу и установил - пусто...

Что могло произойти? Если возможность восстановить или еще что-то...?

(остальные данные сохранились)
УТ 2.2 для Казахстана 1с82
Ответ:
Ukraina
Приветствую, Форумчане!

Не знаю, что произошло в тот вечер, но сегодня утром включил и всё появилось и всё заработало как раньше... Мистика, или 1с отказался работать в субботу после 18:00


употребляли?
:)
Вопрос: Взаиморасчеты с клиентом

Всем привет. Есть УТ 11.3.4.81. Задача следующая. Клиент должен денег. Ему сделали новый заказ и он его сразу же оплатил. Т.е. нужно видеть, что оплачен именно этот заказ. Но...И нужно видеть какие накладные оплачены.
Сымитировал работу. Поставил расчеты по заказу. Создал заказ. Внес предоплату и повесил на этот заказ. Все норм. Создал реализацию. Запускаю регл задание "Выполнение отложенных движений по расчетам с клиентами\поставщиками" и че то в отчете "Задолженность клиентов" ничего не меняется. Хотя в книге (Богачева Т.Г. 1СПредприятие 8. Управление торговыми операциями в вопросах и ответах. Издание 9) написано, что должны закрыться все накладные по методу FIFO. стр 178.

Че упустил?
Ответ:
Просто почитав статью, я подумал, что можно сначала оплату привязать к заказу, а потом чтобы она еще и распределилась по накладным.
Вопрос: УТ 11.3, отражение оплаты картой aka "черный нал"

Доброго времени суток, уважаемые воены 1С.
Есть УТ 11.3.4.153, делается заказ клиента, клиент скинул ему денег на карту сбербанка генеральному директору. Как отразить сие дело? Документа "Оплата черным налом" в УТ 11 не существует. Закрывать заказ клиента? Если так, то как потом отгрузить товар? Понимаю, что данная практика порочна, и не очень легальна. Как бы вы отразили это действие в УТ 11 без доработок? Заранее благодарю помогающих. Да прибудет с вами сила.
Ответ: () сертификат надо сначала реализовать одному клиенту, а потом при реализации товара другому клиенту по этому сертификату зачесть стоимость сертификата в оплаты по заказу другого клиента. это движение денег сначала делает минус, а потом плюс. у нас же просто "черный" плюсик (оплата от клиента) появился. так что вариант хороший, но по моему скромному мнению, не очень подходит. разве нет?
Вопрос: Расхождения в заказе поставщику и поступлении товаров

Здравствуйте. Ситуация следующая : есть документ "Заказ поставщику" и введенный на основании его документ "Поступление товаров и услуг". В поступлении может быть указано большее или меньшее количество товара, чем в заказе. Можно ли как-нибудь оценить расхождения между заказанным и фактически поступившим товаром? Может быть это в каком-то отчете можно увидеть? Конфа - сильно пиленная УТ 10.3
Ответ:
В УТ 10.3 информацию о заказах можно посмотреть так: Отчеты - > Закупки - > Анализ заказов -> "Анализ заказов поставщикам" и "Ведомость по заказам поставщикам"
Вопрос: В УНФ 1.6.16 новая функция - "Помощник Даша"


В 1С:Управлении нашей фирмой появился ассистент управления фирмой – Даша.
Даша, как и обычный сотрудник, выполняет поручения в 1С:УНФ. Например, можно поручить Даше обработку заказов при получении оплаты или отгрузке – она изменит состояние заказа, напишет об этом в чате документа и сообщит об изменениях менеджеру.
Даша освободит пользователей от рутинных действий, таких как:
изменение состояний заказов;
информирование коллег об оплате и отгрузке;
оповещение клиентов о начислении/списании бонусов.
Также Даша проконтролирует, соответствует ли состояние, установленное в документе, реальному состоянию заказа. Например, если документ отгрузки еще не введен, а менеджер установил состояние «Отгружен», она попросит обратить внимание на документ.

****
У нас и так часто приходится выяснить кто что сделал в базе.
А тут еще эта Даша!
Кто-то пользуется или включаете ее ?
Ответ:

Сегодня мне позвонила... моя машина. Сказала, что у нее сработала сигнализация и попросила ее проверить. Скажи мне лет 20 назад, что такое произойдет - я бы рассмеялся в лицо тому человеку. Хотя, уже к тому времени успел прочитать всю научную фантастику в нашей местной библиотеке.
Дожили... машина стала моим другом и контактом в телефоне. С собственным аватаром и именем. Я скромно назвал контакт "Прадик Лэнд Крузеров" и прикрепил фото с нашего первого знакомства. И теперь Прадик может позвонить мне, и я могу позвонить ему. Разговор, конечно, будет не самый душевный, он просто спросит у тебя команду или расскажет, какие команды он знает и умеет выполнять. Зато само осознание того, что ты можешь управлять роботом, и он будет тебя слушаться, заставляет поверить, что я уже живу в будущем, том самом, каким его рисовали 20 лет назад.
А что дальше? Кресло-психоаналитик? Плита-диетолог? Холодильник-собутыльник?

:-)
Вопрос: Создание дипломного проекта "Электронная библиотека"

Здравствуйте. Пишу диполом на 1с. Электронная Библиотека. Итак суть проблемы: Я хотел бы чтобы в табличной части справочника "Студенты"-1, после выбора в реквизите "Название_Книги"-2 определённой книги, в реквизите "id_Экземпляр"-3 появлялся на выбор список доступных экземпляров. Цифрами возле ковычек я отметил обозначения на картинки. Ещё бы конечно было неплохо чтобы при попадании экземпляра к студенту чтобы статус менялся, но это зада второстепенная. Помогите пожалуйста. Ещё вопрос: Почему после ссылания на какое-то поле я могу в текущее поле добавлять только стандартный реквезит "Наименование"? Спасибо за уделённое внимание. (Ещё посоветуйте пожалуйста книжек для чайника которые могли бы помочь в моей теме плиз.)
Ответ:
Сообщение от rung15
не знаю почему, но список выпадает только при нажатии кнопки ф4, а когда нажимаешь на стрелочку ничего не происходит, и троеточие пропало куда-то
Кому я это писала?

Сообщение от GreenkA
Не забудьте в свойствах элемента формы "id_Экземпляр" включить "Кнопку списка".
Кнопка списка и дает эти "три точки", которые у вас пропали. Автоматом у вас это отображаться не будет, потому что тип реквизита "id_Экземпляр" - Строка. Был бы справочник - ничего в свойствах изменять не пришлось бы, и пометки "Авто" хватило бы.

Сообщение от rung15
Вот чего я достиг за 6 часов и более 8 пересозданных конфигураций
Начинать сначала можно много раз, но итог будет один и тот же, если не понять, в чем проблема. Может стоит что-то перечитать? Эту тему, книгу, погуглить...

Ответы на вопросы из файла
Кликните здесь для просмотра всего текста

СтандартнаяОбработка = Ложь; - (Для чего это, как я понял если книга не заполнена чтобы не выполнялась обработка выводящая список экземпляров.)
Отключение стандартной обработки события элемента формы, чтобы сработало наше описание события.
Пример для вашей конфигурации: есть элемент формы, связанный с реквизитом Название_Книги (тип СправочникСсылка.Книги). Стандартная обработка события НачалоВыбора() этого элемента приведет к открытию ФормыВыбора справочника Книги. Если мы хотим передать туда дополнительные параметры, выставить например отбор, открыть другую форму - отключаем стандартную обработку и пишем то, что хотим сделать по этому событию.

&НаСервереБезКонтекста (Чем отличаеться сервер с контекстом и без, и почему именно такой выбран)
Почитайте про директивы в 1С. Много, но полезно.

1C
1
2
3
4
5
6
7
8
9
Запрос = новый Запрос("ВЫБРАТЬ
                          | КнигиЭкземпляры.id_Экземпляр
//что такое КнигиЭкземпляры, такого справочника нет, реквизита тоже как и табличной части.
                          |ИЗ
                          | Справочник.Книги.Экземпляры КАК КнигиЭкземпляры
                          |ГДЕ
                          | КнигиЭкземпляры.Ссылка = &Ссылка 
//Тот же вопрос
                          | И КнигиЭкземпляры.Наличие = ИСТИНА");
Почитайте
Конкретно по вашим вопросам: это текст запроса, в котором идет обращение к таблице Справочник.Книги.Экземпляры(табличной части Экземпляры), имя таблицы в запросе можно менять, здесь оно определено как КнигиЭкземпляры. Поэтому все получаемые поля мы определяем как <ИмяТаблицы>.<ИмяПоля>, отсюда
КнигиЭкземпляры.id_Экземпляр. "КнигиЭкземпляры.Ссылка = &Ссылка" - отбор записей в запросе по конкретному элементу справочнику Книги, который мы позже выставляем как параметр - "Запрос.УстановитьПараметр("Ссылка", Книга);".

Запрос.УстановитьПараметр("Ссылка", Книга); (Для чего нужен параметр)
Чтобы в выборку запроса не попали данные по всем книгам, а только по одной заданной.

Книги_Студентаid_ЭкземплярПриИзмененииНаСервере(ТекущаяСтрока.Название_Книги, ТекущаяСтрока.id_Экземпляр); (Это типа пересылка на процедуру ниже)
Это вопрос или утверждение? Типа да)

НайдСтрока = ТекущаяКнига.Экземпляры.НайтиСтроки(Новый Структура("id_Экземпляр", id_Экземпляр)); (Тут вообще не понимаю ничего, и для чего нам нужна структура особенно)
Умеете пользоваться синтакс-помощником? Вызов ctrl+f1, если выставите в это время курсор на чем-то непонятном - он еще сразу и попытается найти информацию об этом, с описанием и примерами.
Описание метода НайтиСтроки(): осуществляет поиск строк табличной части, соответствующих заданному условию поиска.
Условия поиска заданы в скобках в виде структуры, где в начале "id_Экземпляр" - ключ структуры, имя колонки поиска, дальше - значение структуры - id_Экземпляр(без кавычек). Это значение мы передали при вызове процедуры Книги_Студентаid_ЭкземплярПриИзмененииНаСервере(Книга, id_Экземпляр).

Если НайдСтрока.Количество() > 0 Тогда () (Если мы выбираем какую-то строку из экземпляров то делаем её ложной?)
Ложной - это как? В этой строке мы проверяем, нашлись ли строки в табличной части по заданным параметрам поиска, чтобы не было ошибок при попытке получения значения по индексу.


Директивы компиляции
Кликните здесь для просмотра всего текста

Каждая процедура и функция модуля формы, модуля команды и общего модуля управляемого приложения предваряется директивой компиляции, определяющей среду исполнения данной процедуры. Директива предваряется символом "&". Допустимые директивы:

&НаКлиенте (&AtClient) — определяет клиентскую процедуру (функцию);
&НаСервере (&AtServer) — определяет серверную процедуру (функцию);
&НаСервереБезКонтекста (&AtServerNoContext) — определяет серверную процедуру (функцию), исполняемую на сервере вне контекста формы. Переменные не могут быть внеконтекстными. В таких методах недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных методов. При вызове этих методов не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных методов позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры из среды клиентского приложения;
&НаКлиентеНаСервереБезКонтекста (&AtClientAtServerNoContext) — определяет процедуру (функцию), исполняемую в модуле формы на клиенте и на сервере, не имеющую доступа к контексту формы, данным формы, переменным, но имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно. Сама процедура (функция) доступна для клиентский, серверных контекстных и неконтекстных процедур и функций модуля формы. Из серверных внеконтекстных методов формы допускается вызов серверных методов общих модулей;
&НаКлиентеНаСервере (&AtClientAtServer) — определяет процедуру (функцию), исполняемую в модуле команды, выполняемую на клиенте и на сервере, имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно, не имеющую доступ к переменным. Сама процедура (функция) доступна для клиентских серверных процедур и функций модуля команды.
Клиентская процедура (функция) исполняется в среде клиентского приложения. В такой процедуре доступен клиентский контекст формы и вызовы любых процедур модуля.

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

Серверная процедура (функция), исполняемая вне контекста формы, (внеконтекстная) исполняется в среде серверного приложения. В такой процедуре (функции) недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных процедур (функций). При вызове этих процедур (функций) не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных процедур (функций) позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры (функции) из среды клиентского приложения.

Отсутствие директивы компиляции перед процедурой (функцией) означает использование директивы по умолчанию. Директивой по умолчанию является &НаСервере. Не допускается использование нескольких директив компиляции перед одной процедурой (функцией). Не допускается наличие одноименных процедур (функций), отличающихся только директивами компиляции.

В модуле управляемой формы допускается использование инструкций препроцессору. Рекомендуется использовать инструкции препроцессора только внутри процедур (функций). Для понимания результата при "пересечении" инструкциями препроцессора границ процедур (функций) следует учитывать, что обработка инструкций препроцессора выполняется до обработки директив компиляции.

В модуле команды предопределенная процедура-обработчик ОбработатьКоманду должна предваряться директивой &НаКлиенте, так как выполнение команды происходит в клиентском приложении.

Модуль формы
В модуле формы доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаСервереБезКонтекста, &НаКлиентеНаСервереБезКонтекста.
Модуль команды
В модуле команды доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаКлиентеНаСервере.
Общий модуль
В общем модуле доступны директивы компиляции – &НаКлиенте, &НаСервере.
Вопрос: Создание дипломного проекта "Электронная библиотека"

Здравствуйте. Пишу диполом на 1с. Электронная Библиотека. Итак суть проблемы: Я хотел бы чтобы в табличной части справочника "Студенты"-1, после выбора в реквизите "Название_Книги"-2 определённой книги, в реквизите "id_Экземпляр"-3 появлялся на выбор список доступных экземпляров. Цифрами возле ковычек я отметил обозначения на картинки. Ещё бы конечно было неплохо чтобы при попадании экземпляра к студенту чтобы статус менялся, но это зада второстепенная. Помогите пожалуйста. Ещё вопрос: Почему после ссылания на какое-то поле я могу в текущее поле добавлять только стандартный реквезит "Наименование"? Спасибо за уделённое внимание. (Ещё посоветуйте пожалуйста книжек для чайника которые могли бы помочь в моей теме плиз.)
Ответ:
Сообщение от rung15
не знаю почему, но список выпадает только при нажатии кнопки ф4, а когда нажимаешь на стрелочку ничего не происходит, и троеточие пропало куда-то
Кому я это писала?

Сообщение от GreenkA
Не забудьте в свойствах элемента формы "id_Экземпляр" включить "Кнопку списка".
Кнопка списка и дает эти "три точки", которые у вас пропали. Автоматом у вас это отображаться не будет, потому что тип реквизита "id_Экземпляр" - Строка. Был бы справочник - ничего в свойствах изменять не пришлось бы, и пометки "Авто" хватило бы.

Сообщение от rung15
Вот чего я достиг за 6 часов и более 8 пересозданных конфигураций
Начинать сначала можно много раз, но итог будет один и тот же, если не понять, в чем проблема. Может стоит что-то перечитать? Эту тему, книгу, погуглить...

Ответы на вопросы из файла
Кликните здесь для просмотра всего текста

СтандартнаяОбработка = Ложь; - (Для чего это, как я понял если книга не заполнена чтобы не выполнялась обработка выводящая список экземпляров.)
Отключение стандартной обработки события элемента формы, чтобы сработало наше описание события.
Пример для вашей конфигурации: есть элемент формы, связанный с реквизитом Название_Книги (тип СправочникСсылка.Книги). Стандартная обработка события НачалоВыбора() этого элемента приведет к открытию ФормыВыбора справочника Книги. Если мы хотим передать туда дополнительные параметры, выставить например отбор, открыть другую форму - отключаем стандартную обработку и пишем то, что хотим сделать по этому событию.

&НаСервереБезКонтекста (Чем отличаеться сервер с контекстом и без, и почему именно такой выбран)
Почитайте про директивы в 1С. Много, но полезно.

1C
1
2
3
4
5
6
7
8
9
Запрос = новый Запрос("ВЫБРАТЬ
                          | КнигиЭкземпляры.id_Экземпляр
//что такое КнигиЭкземпляры, такого справочника нет, реквизита тоже как и табличной части.
                          |ИЗ
                          | Справочник.Книги.Экземпляры КАК КнигиЭкземпляры
                          |ГДЕ
                          | КнигиЭкземпляры.Ссылка = &Ссылка 
//Тот же вопрос
                          | И КнигиЭкземпляры.Наличие = ИСТИНА");
Почитайте
Конкретно по вашим вопросам: это текст запроса, в котором идет обращение к таблице Справочник.Книги.Экземпляры(табличной части Экземпляры), имя таблицы в запросе можно менять, здесь оно определено как КнигиЭкземпляры. Поэтому все получаемые поля мы определяем как <ИмяТаблицы>.<ИмяПоля>, отсюда
КнигиЭкземпляры.id_Экземпляр. "КнигиЭкземпляры.Ссылка = &Ссылка" - отбор записей в запросе по конкретному элементу справочнику Книги, который мы позже выставляем как параметр - "Запрос.УстановитьПараметр("Ссылка", Книга);".

Запрос.УстановитьПараметр("Ссылка", Книга); (Для чего нужен параметр)
Чтобы в выборку запроса не попали данные по всем книгам, а только по одной заданной.

Книги_Студентаid_ЭкземплярПриИзмененииНаСервере(ТекущаяСтрока.Название_Книги, ТекущаяСтрока.id_Экземпляр); (Это типа пересылка на процедуру ниже)
Это вопрос или утверждение? Типа да)

НайдСтрока = ТекущаяКнига.Экземпляры.НайтиСтроки(Новый Структура("id_Экземпляр", id_Экземпляр)); (Тут вообще не понимаю ничего, и для чего нам нужна структура особенно)
Умеете пользоваться синтакс-помощником? Вызов ctrl+f1, если выставите в это время курсор на чем-то непонятном - он еще сразу и попытается найти информацию об этом, с описанием и примерами.
Описание метода НайтиСтроки(): осуществляет поиск строк табличной части, соответствующих заданному условию поиска.
Условия поиска заданы в скобках в виде структуры, где в начале "id_Экземпляр" - ключ структуры, имя колонки поиска, дальше - значение структуры - id_Экземпляр(без кавычек). Это значение мы передали при вызове процедуры Книги_Студентаid_ЭкземплярПриИзмененииНаСервере(Книга, id_Экземпляр).

Если НайдСтрока.Количество() > 0 Тогда () (Если мы выбираем какую-то строку из экземпляров то делаем её ложной?)
Ложной - это как? В этой строке мы проверяем, нашлись ли строки в табличной части по заданным параметрам поиска, чтобы не было ошибок при попытке получения значения по индексу.


Директивы компиляции
Кликните здесь для просмотра всего текста

Каждая процедура и функция модуля формы, модуля команды и общего модуля управляемого приложения предваряется директивой компиляции, определяющей среду исполнения данной процедуры. Директива предваряется символом "&". Допустимые директивы:

&НаКлиенте (&AtClient) — определяет клиентскую процедуру (функцию);
&НаСервере (&AtServer) — определяет серверную процедуру (функцию);
&НаСервереБезКонтекста (&AtServerNoContext) — определяет серверную процедуру (функцию), исполняемую на сервере вне контекста формы. Переменные не могут быть внеконтекстными. В таких методах недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных методов. При вызове этих методов не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных методов позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры из среды клиентского приложения;
&НаКлиентеНаСервереБезКонтекста (&AtClientAtServerNoContext) — определяет процедуру (функцию), исполняемую в модуле формы на клиенте и на сервере, не имеющую доступа к контексту формы, данным формы, переменным, но имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно. Сама процедура (функция) доступна для клиентский, серверных контекстных и неконтекстных процедур и функций модуля формы. Из серверных внеконтекстных методов формы допускается вызов серверных методов общих модулей;
&НаКлиентеНаСервере (&AtClientAtServer) — определяет процедуру (функцию), исполняемую в модуле команды, выполняемую на клиенте и на сервере, имеющую доступ к процедурам и функциям общих модулей – серверных, не глобальных и серверных и клиентских одновременно, не имеющую доступ к переменным. Сама процедура (функция) доступна для клиентских серверных процедур и функций модуля команды.
Клиентская процедура (функция) исполняется в среде клиентского приложения. В такой процедуре доступен клиентский контекст формы и вызовы любых процедур модуля.

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

Серверная процедура (функция), исполняемая вне контекста формы, (внеконтекстная) исполняется в среде серверного приложения. В такой процедуре (функции) недоступен контекст формы (включая данные формы). Допустимыми являются вызовы только других внеконтекстных процедур (функций). При вызове этих процедур (функций) не выполняется передача данных формы на сервер и обратно. Применение внеконтекстных процедур (функций) позволяет существенно уменьшить объем передаваемых данных при вызове серверной процедуры (функции) из среды клиентского приложения.

Отсутствие директивы компиляции перед процедурой (функцией) означает использование директивы по умолчанию. Директивой по умолчанию является &НаСервере. Не допускается использование нескольких директив компиляции перед одной процедурой (функцией). Не допускается наличие одноименных процедур (функций), отличающихся только директивами компиляции.

В модуле управляемой формы допускается использование инструкций препроцессору. Рекомендуется использовать инструкции препроцессора только внутри процедур (функций). Для понимания результата при "пересечении" инструкциями препроцессора границ процедур (функций) следует учитывать, что обработка инструкций препроцессора выполняется до обработки директив компиляции.

В модуле команды предопределенная процедура-обработчик ОбработатьКоманду должна предваряться директивой &НаКлиенте, так как выполнение команды происходит в клиентском приложении.

Модуль формы
В модуле формы доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаСервереБезКонтекста, &НаКлиентеНаСервереБезКонтекста.
Модуль команды
В модуле команды доступны директивы компиляции – &НаКлиенте, &НаСервере, &НаКлиентеНаСервере.
Общий модуль
В общем модуле доступны директивы компиляции – &НаКлиенте, &НаСервере.