Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 12:26

Заполнить договор

Автор AlenkaInt, 17 окт 2012, 18:51

0 Пользователей и 1 гость просматривают эту тему.

mixqn

Цитата: Dethmontt от 17 окт 2012, 23:43
Запрос = Новый Запрос;
   Запрос.Текст =
      "ВЫБРАТЬ
      |   ДоговорыКонтрагентов.ВидДоговора,
      |   ДоговорыКонтрагентов.Наименование КАК Наименование
      |ИЗ
      |   Справочник.ДоговорыКонтрагентов КАК ДоговорыКонтрагентов
      |ГДЕ
      |   ДоговорыКонтрагентов.Наименование = &Договор
      |   И ДоговорыКонтрагентов.ВидДоговора = ""С поставщиком""";

   Запрос.УстановитьПараметр("Договор", Объект.ДоговорКонтрагента);
   Результат = Запрос.Выполнить();
   ВыборкаДетальныеЗаписи = Результат.Выбрать();
   ДокПоступление.ДоговорКонтрагента = ВыборкаДетальныеЗаписи.Наименование;
//Будем отлаживать....
//А где же ты моя ошибка???
Если Не ЗначениеЗаполнено(ДокПоступление.ДоговорКонтрагента) Тогда
//Накосячили.....
Сообщить("Накосячили ищем ошибку....")
ТипДок = ТипЗнч(ДокПоступление.ДоговорКонтрагента);
ТипВыб = ТипЗнч(ВыборкаДетальныеЗаписи.Наименование);
Сообщить("Ошибка в ТИПЕ? ОТВЕТ: "+формат(ТипДок<>ТипВыб,"БЛ=Нет; БИ=Да"));
Если ТипДок<>ТипВыб Тогда
Сообщить("Тип документа = "+ТипДок);
Сообщить("Тип выборки запроса = "+ТипВыб);
Сообщить("Разве можно в тип <"+ТипДок+"> записать вот этот тип <"+Типвыб+"> ?????????");
Сообщить("Теперь понятно где косяк?");
КонецЕсли;

Dethmontt, зачет :D

AlenkaInt, вам надо сразу в запросе выбрать ссылку (как написал Dethmontt в последнем сообщении), только и всего.

AlenkaInt

ДокПоступление.ДоговорКонтрагента тип - СправочникСсылка.ДоговорыКонтрагентов
Вот я и привела тип переменной ВыборкаДетальныеЗаписи.Наименование к типу реквизита.
ДокПоступление.ДоговорКонтрагента = Справочники.ДоговорыКонтрагентов.НайтиПоНаименованию(ВыборкаДетальныеЗаписи.Наименование);
Так?
Почему то при таком раскладе у меня в документе поступление товаров в договоре появляется - Договор поставки Л-56, а должно быть - 98ПОК

Dethmontt

Сделайте как я вам написал в прошлом сообщение - потом разберем почему именно так, а не как вы написали...
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

mixqn

Цитата: Dethmontt от 18 окт 2012, 00:21
mixqn, как я понял девушке нужно найти договор с точно таким же наименованием только с видом договора противоположным
Объект.Договор.ВидДоговора = "С поставщиком" а ей нужен "с покупателем" отсюда и извращения такие =)))
да, я сначала стартпост не до конца прочел. вроде успел поправить последнее сообщение :) надеюсь никто не заметил :D

по моему, ответ https://forum-baza.ru/index.php?topic=16171.0;msg=62844 исчерпывающий, нет?

Dethmontt

Цитата: Dethmontt от 18 окт 2012, 00:23
да, я сначала стартпост не до конца прочел. вроде успел поправить последнее сообщение  надеюсь никто не заметил
Я ни чего не видел =)))

Цитата: Dethmontt от 18 окт 2012, 00:23
по моему, ответ forum-baza.ru/... исчерпывающий, нет?
Как вставлять такие ссылки?
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

mixqn

Цитата: Dethmontt от 18 окт 2012, 00:27
Как вставлять такие ссылки?
а это относительно новая фича (добавлена после обновления движка): наводите курсор на заголовок ответа - там нужная ссылка (см. скрин)

AlenkaInt

Сделала.
Ругается программа.
Выбран договор контрагента, не соответствующий организации, указанной в документе!

Dethmontt

Цитата: mixqn от 18 окт 2012, 00:31
Цитата: Dethmontt от 18 окт 2012, 00:27
Как вставлять такие ссылки?
а это относительно новая фича (добавлена после обновления движка): наводите курсор на заголовок ответа - там нужная ссылка (см. скрин)
Круто!
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

mixqn

Цитата: Dethmontt от 18 окт 2012, 00:32
Круто!
а то )) а про цитирование выделенного в курсе? вообще, все нововведения обсуждались в теме. последнее время работы несколько подзаморозились, но в планах еще много (сегодня утром актуализировал список задач по доработке форума - запланированных 33 штуки :))

Dethmontt

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

   Запрос.УстановитьПараметр("Договор", Объект.ДоговорКонтрагента.Наименование);
   Запрос.УстановитьПараметр("Организация", Объект.Организация); //ЭТО
   Результат = Запрос.Выполнить();
   ВыборкаДетальныеЗаписи = Результат.Выбрать();
Если ВыборкаДетальныеЗаписи.Следующий() Тогда
   ДокПоступление.ДоговорКонтрагента = ВыборкаДетальныеЗаписи.ДОГОВОР;
КонецЕсли;
Если долго всматриваться в учебник...то в голову может прийти мысль его открыть!

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск