Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
14 Июн 2021, 23:41
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
МультиВход
 
collapse

Автор Тема: Счет-фактура добавить сразу несколько документов-основания  (Прочитано 4788 раз)

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

Оффлайн alexei1800

  • *
  • Регистрация: 2016-08-17
  • Сообщений: 28
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Подскажите опять туплю
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
докнов.ДокументОснование=ВыборкаДетальныеЗаписи.ссылкадок;
но нужно добавить не один документ основания, а несколько
нужно добавить 4 документа основания ВыборкаДетальныеЗаписи.ссылкадок
ВыборкаДетальныеЗаписи2.ссылкадок ВыборкаДетальныеЗаписи3.ссылкадок ВыборкаДетальныеЗаписи4.ссылкадок, как их добавить
если делаешь так документыоснования = ВыборкаДетальныеЗаписи.ссылкадок + ВыборкаДетальныеЗаписи2.ссылкадок; то выводит ошибку преобравзование к значению числу не выполнено



Оффлайн alex0402

  • *****
  • Регистрация: 2010-09-10
  • Сообщений: 2000
  • РЕПУТАЦИЯ: 358
  • КПД: 18%
  • Профессия: Программист 1С
Нельзя в реквизит типа Ссылка поместить больше одной ссфлки
Спасибо за Сказать спасибо

Оффлайн alexei1800

  • *
  • Регистрация: 2016-08-17
  • Сообщений: 28
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Нельзя в реквизит типа Ссылка поместить больше одной ссфлки
там нет там не реквизит типо ссылка, я имею ввиду табличную часть документоснования, а там документ основание  тип у него состовной и когда вручную делаешь счет-фактуру, можно в документ-основания добавлять несколько документов основания

Оффлайн alex0402

  • *****
  • Регистрация: 2010-09-10
  • Сообщений: 2000
  • РЕПУТАЦИЯ: 358
  • КПД: 18%
  • Профессия: Программист 1С
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка1;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка2;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка3;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка4;
Спасибо за Сказать спасибо

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • *****
  • Регистрация: 2010-11-06
  • Сообщений: 5748
  • РЕПУТАЦИЯ: 1105
  • КПД: 19%
  • Красная армия всех сильней!
    • Skype: cska-fanat-kz81
  • Профессия: Разработчик 1С
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
докнов.ДокументОснование=ВыборкаДетальныеЗаписи.ссылкадок;
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
докнов.ДокументОснование=ВыборкаДетальныеЗаписи2.ссылкадок;
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
докнов.ДокументОснование=ВыборкаДетальныеЗаписи3.ссылкадок;
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
докнов.ДокументОснование=ВыборкаДетальныеЗаписи4.ссылкадок;
...
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн LexaK

  • *****
  • Регистрация: 2012-05-16
  • Сообщений: 2564
  • РЕПУТАЦИЯ: 820
  • КПД: 32%
  • Профессия: Программист 1С
блин ну что за бред?
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка1;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка2;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка3;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка4;

за такое сразу ставят двойку и выгоняют с экзамена! :befhbt:

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

//на сервере
Процедура ПодобратьОснования(Кнопка)

лкЗапрос = Новый Запрос;
лкЗапрос.Текст = "
    |Выбрать
|//здесь формируете запрос который найдет ваши основания
|//по каким-то кретериям Контрагент, Договор и т.д.
| Док.Ссылка как ДокументОснование,
|   ...
|";
лкЗапрос.УстановитьПараметр("Контрагент",Контрагент);
лкЗапрос.УстановитьПараметр("Договор",Договор);

//получаем данные и формируем ТЧ Оснований
лкРезультат = лкЗапрос.Выполнить().Выбрать();
Пока лкРезультат.Следующий() Цикл
лкНов = ДокументыОснования.Добавить();
лкНов.ДокументОснование = лкРезультат.ДокументОснование;
//и другие нужные поля заполняете здесь, их можно в том-же запросе подготовить
КонецЦикла;

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

Помогло? - Нажми СПАСИБО (под аватаром) !!!
                       :)

Оффлайн alexei1800

  • *
  • Регистрация: 2016-08-17
  • Сообщений: 28
  • РЕПУТАЦИЯ: 0
  • Профессия: Ученик 1С
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка1;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка2;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка3;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка4;

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


Сумма везде = 0
Добавлено: 09 Сен 2016, 15:04

блин ну что за бред?
Докнов=Документсчетфактура.ДокументыОснования.Добавить();
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка1;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка2;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка3;
НоваяСтрока = ДокНов.ТабличнаяЧасть.Добавить();
НоваяСтрока.ДокументОснование = Ссылка4;

за такое сразу ставят двойку и выгоняют с экзамена! :befhbt:

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

//на сервере
Процедура ПодобратьОснования(Кнопка)

лкЗапрос = Новый Запрос;
лкЗапрос.Текст = "
    |Выбрать
|//здесь формируете запрос который найдет ваши основания
|//по каким-то кретериям Контрагент, Договор и т.д.
| Док.Ссылка как ДокументОснование,
|   ...
|";
лкЗапрос.УстановитьПараметр("Контрагент",Контрагент);
лкЗапрос.УстановитьПараметр("Договор",Договор);

//получаем данные и формируем ТЧ Оснований
лкРезультат = лкЗапрос.Выполнить().Выбрать();
Пока лкРезультат.Следующий() Цикл
лкНов = ДокументыОснования.Добавить();
лкНов.ДокументОснование = лкРезультат.ДокументОснование;
//и другие нужные поля заполняете здесь, их можно в том-же запросе подготовить
КонецЦикла;

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

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

Оффлайн cska-fanat-kz

  • 1С:Специалист
  • *****
  • Регистрация: 2010-11-06
  • Сообщений: 5748
  • РЕПУТАЦИЯ: 1105
  • КПД: 19%
  • Красная армия всех сильней!
    • Skype: cska-fanat-kz81
  • Профессия: Разработчик 1С
блин ну что за бред?

ну не без этого ;)
просто что было дано, то и исправил )
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.


Теги:
 


* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Последние вакансии

* Том 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
72 Сообщений
LexaK
62 Сообщений
antoneus antoneus
31 Сообщений
Ивашка
27 Сообщений
KATERINA 861
23 Сообщений
neek666
23 Сообщений
alexandr_ll
15 Сообщений
SSC
15 Сообщений
Алексей_1985_06
11 Сообщений
BuhRust
8 Сообщений

* Кто онлайн

  • Точка Гостей: 217
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Инструменты

* Дополнительно

Поиск