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

Автор Тема: Получить реквизит документа в другом документе  (Прочитано 4574 раз)

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

Оффлайн JOG

  • **
  • Сообщений: 74
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Программист 8.1
Уважаемые формучане, прошу помощи.
Никак не могу получить реквизит документа в другом документе.
Мне надо вытащить реквизиты табличной части из Док2 и использовать их в Док1. Выдаётся ощибка "Индекс находится за границами массива". Ок. Решил попробовать без табличной части - таже ошибка.
Привожу код в форме Док1:
&НаСервере
Функция ПолучитьСуммуДолгаНаСервере(СписокДолжников)
ДолгЗапрос = Новый Запрос;
ДолгЗапрос.Текст =
"ВЫБРАТЬ
| СписокДолжников.СуммаДолга
|ИЗ
| Документ.СписокДолжников КАК СписокДолжников
|ГДЕ
| СписокДолжников.Ссылка = &Ссылка";
ДолгЗапрос.УстановитьПараметр("Ссылка", СписокДолжников);
РезультатТабЗначений = ДолгЗапрос.Выполнить().Выгрузить();
Возврат РезультатТабЗначений[0].СуммаДолга;
 КонецФункции

&НаКлиенте
 Процедура ДолжникПриИзменении(Элемент)
Объект.СуммаДолга = ПолучитьСуммуДолгаНаСервере(Объект.ДолжникФамилия);
 КонецПроцедуры

или подскажите как правильно получить реквизиты ТЧ Док2 при изменении фамилии должника в Док1?
P.S.: Тип у ФамилииДолжника ссылка на справочник Должники.


Оффлайн vitasw

  • *****
  • Сообщений: 2575
  • РЕПУТАЦИЯ: 311
  • КПД: 12%
  • Регистрация: 2015-02-10
  • Сайт: 
  • Профессия: Программист 1С
Отладчик! первый товарищ и брат. В списке должников такой фамилии нет.

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

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
1.
РезультатТабЗначений = ДолгЗапрос.Выполнить().Выгрузить(); Возврат РезультатТабЗначений[0].СуммаДолга;

в этом месте надо как минимум проверить если результат запроса - пустой.

2. что-то у вас непонятно: в функцию отправляете значение типа
Тип у ФамилииДолжника ссылка на справочник Должники.
а в запросе его потом сравниваете со ссылкой НА ДОКУМЕНТ...

Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн JOG

  • **
  • Сообщений: 74
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Программист 8.1
1.
РезультатТабЗначений = ДолгЗапрос.Выполнить().Выгрузить(); Возврат РезультатТабЗначений[0].СуммаДолга;

в этом месте надо как минимум проверить если результат запроса - пустой.

2. что-то у вас непонятно: в функцию отправляете значение типа
Тип у ФамилииДолжника ссылка на справочник Должники.
а в запросе его потом сравниваете со ссылкой НА ДОКУМЕНТ...

Никак не получается у меня решить задачу.
В общем поясню еще раз.
Есть справочник Должники, где реквизиты Фамилия, Имя, Отчество, паспортные данные.
Есть документ СписокДолжников с табличной частью, где реквизиты ТабЧасти ФамилияДолжника (Тип:СправочникСсылка.Должники) и СуммаДолга (Тип: Число)
Есть документ Претензия, которая формируется для одного должника из СпискаДолжников, где реквизиты: СписокДолжников(Тип:ДокументСсылка.СписокДолжников), Фамилия, Имя, Отчество, СуммаДолга.
Вопрос: 1) как получить в Документе Претензия, в реквизите СуммаДолга, значение прописанное в ТЧ Документа СписокДолдников.
Или
2) Как получить список фамилий из ТЧ Список Должников, но, чтобы они были в виде списка в поле Фамилия Претензия, при измененнии Реквизита СписокДолжников.

Форма документа Претензия

Документ СписокДолжников


Без табличной части всё супер, обычным запросом делаю и всё ок. А вот чтобы вытащить значение из ТЧ никак не разберусь:(

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

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

Оффлайн JOG

  • **
  • Сообщений: 74
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Программист 8.1
Заводим оборотный (хотя не обязательно) регистр накопления Долги с измерением Должник и ресурсом Сумма
и складываем в него значения документом СписокДолжников...
Но проблема в том, что мне необходимо значение СуммыДолга для определенного Должника исользовать в Претензии при фомировании макета. Поэтому мне нужно получить из ТЧ определнную СуммуДолга, для опрделенного Должника.
То есть я в Претензии выбираю как бы из списка ТЧ фамилии, а в другом поле СуммаДолга в Претензии, я должен получить соответствующее значение суммы и затем использовать её в макете. Это реально? То есть на клиенте при изменении фамилии, нужно получить сумму долга. Без ТЧ, всё прекрасно, но для одного должника, а вот получить список всех.. может выборкой как то? никак не сформирую правильно запрос

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

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

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

Оффлайн JOG

  • **
  • Сообщений: 74
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Программист 8.1
Раз в неделю будет забиваться новый список и ,соответственно, новая претензия
Добавлено: 28 Апр 2015, 09:01

а если у вас 2 документа СписокДолжников?
1 док: Иванов 1000
2ой док: Иванов 1000

в претензию должно попасть Иванов 2000?
или каждому Списку соответствует своя Претензия?
Претензия будет формироваться по последнему документу СпискаДолжников.

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

  • 1С:Специалист
  • Глобальный модератор
  • *****
  • Сообщений: 5745
  • РЕПУТАЦИЯ: 1099
  • КПД: 19%
  • Красная армия всех сильней!
  • Регистрация: 2010-11-06
    • Skype: cska-fanat-kz81
  • Сайт: cska-fanat-kz.ucoz.kz
  • Профессия: Разработчик 1С
Тогда запрос к ТЧ делаете и все
"ВЫБРАТЬ
    |    СписокДолжниковТЧ.СуммаДолга
    |ИЗ
    |    Документ.СписокДолжников.ИМЯТЧ КАК СписокДолжниковТЧ
    |ГДЕ
    |    СписокДолжниковТЧ.Должник = &Ссылка";
Получил помощь - скажи СПАСИБО.
Разобрался сам - расскажи другим.

Оффлайн JOG

  • **
  • Сообщений: 74
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2014-06-15
  • Сайт: 
  • Профессия: Программист 8.1
Тогда запрос к ТЧ делаете и все
"ВЫБРАТЬ
    |    СписокДолжниковТЧ.СуммаДолга
    |ИЗ
    |    Документ.СписокДолжников.ИМЯТЧ КАК СписокДолжниковТЧ
    |ГДЕ
    |    СписокДолжниковТЧ.Должник = &Ссылка";
а в этом случае у меня опять-таки получается первое значение фамилии из первой строки ТЧ, а возможно ли в поле получить список фамилий из ТЧ?
&НаСервере
Функция ПолучитьДолжникаНаСервере(СписокДолжников)
ДолгЗапрос = Новый Запрос;
ДолгЗапрос.Текст =
"ВЫБРАТЬ
| СписокДолжниковДолжники.ДолжникФамилия
|ИЗ
| Документ.СписокДолжников.Должники КАК СписокДолжниковДолжники
|ГДЕ
| СписокДолжниковДолжники.Ссылка = &Ссылка";
ДолгЗапрос.УстановитьПараметр("Ссылка", СписокДолжников);
РезультатТабЗначений = ДолгЗапрос.Выполнить().Выгрузить();
Возврат РезультатТабЗначений[0].ДолжникФамилия;
 КонецФункции
&НаКлиенте
 Процедура СписокДолжниковПриИзменении(Элемент)
Объект.ФамилияДолжника= ПолучитьДолжникаНаСервере(Объект.СписокДолжников);
 КонецПроцедуры


Теги:
 

Не открывает форму сохраненного документа, открывает форму нового.

Автор EHOTРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 4491
Последний ответ 13 Апр 2012, 23:26
от Vit1501
Автоматическое заполнение табличной части документа из табличной части другого

Автор WillРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 15972
Последний ответ 16 Авг 2012, 12:07
от Will
Заполнение поля табличной части документа из табличной части справочника.

Автор Kurt_WagnerРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 3
Просмотров: 4215
Последний ответ 06 Апр 2015, 20:08
от Kurt_Wagner
Заполнение табличной части документа реквизитами табличной части справочника

Автор kaf_infoРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 650
Последний ответ 10 Май 2017, 20:44
от ilnur75
Добавление сведений в графу "основание" документа "ТОРГ-12"

Автор Ярослав1984Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 7764
Последний ответ 20 Авг 2013, 18:45
от Ярослав1984

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

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

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


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

* Реклама

* Поиск

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

* Реклама

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

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

Геннадий ОбьГЭС Геннадий ОбьГЭС
141 Сообщений
AIFrame
73 Сообщений
ilyay ilyay
65 Сообщений
alex0402
52 Сообщений
andron81_81
44 Сообщений
oleg-x
41 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
BuhRust
31 Сообщений
Golickoff Golickoff
27 Сообщений
alexandr_ll
23 Сообщений

* Кто онлайн

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

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

* Форум 1С с мобильного

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

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

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal