Вход | Регистрация
 
1С:Предприятие :: 1С:Предприятие 8 общая

Доработка кода ввода на основании (расширение)

Доработка кода ввода на основании (расширение)
Я
   anton54575
 
13.11.21 - 15:15
Делаю расширение ввод на основании счета от поставщика

Создал общий модуль

&НаКлиенте
Процедура ОбработкаКоманды(ПараметрКоманды, ПараметрыВыполненияКоманды)
СтрДанные = Новый Структура("Основание", ПараметрКоманды);
ПараметрыФормы = Новый Структура("ЗначенияЗаполнения", СтрДанные);
ОткрытьФорму("Документ.СчетНаОплатуПоставщика.ФормаОбъекта", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно, ПараметрыВыполненияКоманды.НавигационнаяСсылка);

КонецПроцедуры

Создал процедуру в документе

&После("ОбработкаЗаполнения")
Процедура ЕВ_ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
    Если ТипЗнч(ДанныеЗаполнения) = Тип("Структура") Тогда
        Если ДанныеЗаполнения.Свойство("Основание") Тогда
            Если ТипЗнч(ДанныеЗаполнения.Основание) = Тип("ДокументСсылка.СчетНаОплатуПокупателю") Тогда
                ЗаполнитьПоСчетуПокупателю(ДанныеЗаполнения.Основание);
            КонецЕсли;
        КонецЕсли;
    КонецЕсли;

КонецПроцедуры

Собственно все работает, но вопрос вот в чем.

Вопрос:

При автоматическом подставлении реквизитов при вводе на основании мне нужно значение подставления реквизита "Цена" заменить значением добавленного в СчетНаОплатуПоставщика реквизита "ЦенаПоставщика".

В конструкторе запросов все делается и выглядит это следующим образом и работает.

НоваяСтрока.Цена = ТекСтрокаТовары.ЦенаПоставщика;

Но в расширениях конструкторы запросов не работают и хотелось бы узнать как это прописать в процедуре.

Как сделать это в написанной здесь ОбработкеЗаполнения? Что нужно прописать?
   Droning1C
 
1 - 13.11.21 - 15:18
Но в расширениях конструкторы запросов не работают и хотелось бы узнать как это прописать в процедуре.  - конструктор запросов в расширении работает, но видит только контекст расширения.
   Droning1C
 
2 - 13.11.21 - 15:19
Если нужно изменить запрос в расширении и не хочется заимствовать из конфигурации лишнего, то открой в пользовательском режиме консоль, напиши запрос там и перенеси текст запроса в код расширения.
   hhhh
 
3 - 13.11.21 - 15:20
(0) руками пропиши в запросе, или в коде. Это же одна строка, вот нафига тебе, чтобы добавить одну строчку, нужен конструктор?
   Droning1C
 
4 - 13.11.21 - 15:20
ЗаполнитьПоСчетуПокупателю(ДанныеЗаполнения.Основание);  - ты это скопировал из уже существующей обработки заполнения того же документа?
   Droning1C
 
5 - 13.11.21 - 15:21
(3) про это я даже говорить не стал))
   серый КТУЛХУ
 
6 - 13.11.21 - 15:23
(2): консоль дает не код, а текст для конструктора. а конструктор в конфигураторе на такой текст даст ошибку и не сохранит.
или как ты имел ввиду? копирнуть в код и потом тупо вертикальные черточки самому расставлять? а ты видел ерп-шеые запросы по нескольку сотен строк?
   серый КТУЛХУ
 
7 - 13.11.21 - 15:24
*даст ошибку и не перенесет в код
   МимохожийОднако
 
8 - 13.11.21 - 17:25
(6) Да. Вставляешь текст и потом чёрточки. Но уже есть консоли, в которых можно текст запроса скопировать в память и при вставке чёрточки уже на месте.
   серый КТУЛХУ
 
9 - 13.11.21 - 18:17
(8): не видел таких консолей.
а с табуляциями+черточками уже приходилось намахаться - не фонтан это при наличии несколькосотстрочных запросов...
   Droning1C
 
10 - 13.11.21 - 20:42
(9) То что ты их не видел, не значит, что их нет   https://www.youtube.com/watch?v=EHX7NZS8zAI
   Ненавижу 1С
 
11 - 13.11.21 - 21:02
Пишу текст запроса с помощью конструктора во внешней обработки. Вставляю готовый в расширение
   серый КТУЛХУ
 
12 - 13.11.21 - 21:06
(10): по твоей ссылке такой консоли тоже нет.
(11): и махаешься с добавлением табуляций и вертикальных черточек? так об этом уже сказано выше.
   Ненавижу 1С
 
13 - 13.11.21 - 21:21
(12) зачем махаюсь? Вот у меня получилась в модуле внешней обработки строковая константа - текст запроса. С кавычками и вертикальными черточками. Вот её в нужное место и переношу.
   Droning1C
 
14 - 13.11.21 - 22:14
   Droning1C
 
15 - 13.11.21 - 22:15
   Droning1C
 
16 - 13.11.21 - 22:16
(12) а при желании можно любую удобную лично тебе консоль доработать таким образом
   AlvlSpb
 
17 - 13.11.21 - 22:22
(9) Правильно сказали, если нет у тебя не значит что нет вообще
https://a.radikal.ru/a39/2111/67/f948a6cfe5f1.jpg
https://d.radikal.ru/d38/2111/b2/9a05447bcd67.jpg
   серый КТУЛХУ
 
18 - 13.11.21 - 22:32
(17): не значит, я в курсе. за картинки - спасибо, но они в смысле ответа - совершенно бесполезны.
(14): о, ИР = Ок, спасибо
(15): см нету.
   Droning1C
 
19 - 13.11.21 - 22:41
   Droning1C
 
20 - 13.11.21 - 22:46
   серый КТУЛХУ
 
21 - 13.11.21 - 23:00
(19),(20): еще раз. по слогам.
см(!!!!!) нету
(расшифровка: у меня на скачивание по приведенной тобой ссылке).
   acht
 
22 - 13.11.21 - 23:21
(9) https://ibb.co/xgVB6Mr
Стандартная кнопка конфигуратора
   серый КТУЛХУ
 
23 - 13.11.21 - 23:36
(22): о она не дефолтная добавлять надо. спасибо.
(а есть еще дефолтная на ту же тему - запрос из конструктора в код загнать - чтобы кавычки заменить на парные в тексте в коде?)))
   серый КТУЛХУ
 
24 - 13.11.21 - 23:41
(23)+: "не дефолтная" - в смысле https://ibb.co/y6rjkxw
   acht
 
25 - 13.11.21 - 23:42
   серый КТУЛХУ
 
26 - 13.11.21 - 23:45
(26): о, точно, забыл что там "в блоке" можно ограничить.
(костыли - они такие костыли, да. но палюбэ - спасибо!)
   Droning1C
 
27 - 14.11.21 - 00:05
(26) тяжелый ты человек, однако. По итогу автору поста(явно новичку) мы толком не помогли, зато в 20ти ответах рассказали человеку, зареганному на сайте 14 лет то, что он уже давно должен был знать.
   серый КТУЛХУ
 
28 - 14.11.21 - 00:31
(27): я тебя удивлю. я семерочник. с самого е начала ещё. даже с шестерки.
в восьмерке начал ковыряться немногим более полутора лет назад - и полтора года назад получил неслабый тормоз в этом, поймав тяжелый инфаркт (с хронической сердечной недостаточностью вследствие).
а так-то я еще больше 14-ти лет, с т1с еще (если ты помнишь что это такое).
ну и по итогам. мне - "человеку, который" (и т.д) - не "рассказали... что уже давно должен знать". но показали один костыль(!) о котором я не знал (спасибо, acht) и напомнив о втором костыле(!) (спасибо, acht). ну и от тебя одно напоминание (про ир, спасибо), и одна бесполезная для меня ссылка (см. (18)+(21)).
   acht
 
29 - 14.11.21 - 00:37
(28) Беееедненький...
   Droning1C
 
30 - 14.11.21 - 00:48
(28) пошли отдыхать. ну ее, эту 1ску.
 
 
   hhhh
 
31 - 14.11.21 - 01:18
(28) все-таки прикинь, добавить вертикальные черточки хоть в 1000 хоть в 10000 строчек можно, нажав 2-3 кнопки.
   серый КТУЛХУ
 
32 - 14.11.21 - 01:37
(29): и?
(30): та да, пошли, ну её до завтра.
(31): одна кнопка, см.(22), уже выяснили про этот костыль.
   hhhh
 
33 - 14.11.21 - 01:49
(32) почему новый1? что за хрень? Не понял, что в (22). Просто в тексте модуля или тексте запроса нажимаешь Текст-Блок и там есть Добавить комментарий, убрать комментарий, добавить перенос строки, убрать перенос строки.
   ДедМорроз
 
34 - 14.11.21 - 12:44
Если вам и консоль не помогает и вручную не пишется.
То,открываем внешнюю обработку и пишем код с запросом в ней,а потом переносим в рамширение.

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


Список тем форума
 
начал читать тему и понял, что как всегда - вместо того, чтобы поддержать или научить, человеку рассказывают о том, как отмазаться или не делать mikecool
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.