Помогите задать значение ТЧ при переносе данных.
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
Добрый день. Прошу у Вас помощи в одном вопросе.
При переносе документа сложилась следующая ситуация:
Нужно совершить запись данных в ТЧ базы приемника, в ПКО написал код (указан ниже) но данные не записываются, подскажите пожалуйста как исправить данную ситуацию.
"После загрузки":
Валюта = Объект.ВалютаДенежныхСредств;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КурсыВалютСрезПоследних.Курс
|ИЗ
| РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
|ГДЕ
| КурсыВалютСрезПоследних.Валюта = &Валюта";
Запрос.УстановитьПараметр("Валюта", Валюта);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаДетальныеЗаписи.Следующий();
Объект.РасшифровкаПлатежа[0].Кратность = 1;
Объект.РасшифровкаПлатежа[0].Курс = 1;
Объект.РасшифровкаПлатежа[0].СуммаПлатежа = Объект.СуммаДокумента;
Объект.РасшифровкаПлатежа[0].СуммаРасчетов = Объект.СуммаДокумента * ВыборкаДетальныеЗаписи.Курс;
При переносе документа сложилась следующая ситуация:
Нужно совершить запись данных в ТЧ базы приемника, в ПКО написал код (указан ниже) но данные не записываются, подскажите пожалуйста как исправить данную ситуацию.
"После загрузки":
Валюта = Объект.ВалютаДенежныхСредств;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КурсыВалютСрезПоследних.Курс
|ИЗ
| РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
|ГДЕ
| КурсыВалютСрезПоследних.Валюта = &Валюта";
Запрос.УстановитьПараметр("Валюта", Валюта);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаДетальныеЗаписи.Следующий();
Объект.РасшифровкаПлатежа[0].Кратность = 1;
Объект.РасшифровкаПлатежа[0].Курс = 1;
Объект.РасшифровкаПлатежа[0].СуммаПлатежа = Объект.СуммаДокумента;
Объект.РасшифровкаПлатежа[0].СуммаРасчетов = Объект.СуммаДокумента * ВыборкаДетальныеЗаписи.Курс;
По теме из базы знаний
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
я не знаю для каких целей пишите обмен, но я бы проверил результат запроса на пустоту и количество записей "Расшифровка платежа", что действительно больше 0, прежде чем присваивать первой строке какие-либо значения. В последующем это поможет избежать небольшие недоразумения. И курс валют лучше получать не запросом, а с Регистрысведений.курсывалют.получитьпоследнее, в типовых конфигурациях именно такой способ используют.
Если я не понимаю, почему не отрабатывает то или иное событие, я вставляю вывод сообщений между строк, чтобы убедится, что событие действительно происходит.
Если я не понимаю, почему не отрабатывает то или иное событие, я вставляю вывод сообщений между строк, чтобы убедится, что событие действительно происходит.
(2) Borometr, Я вставлял вывод сообщений такого типа:
"После загрузки":
Валюта = Объект.ВалютаДенежныхСредств;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КурсыВалютСрезПоследних.Курс
|ИЗ
| РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
|ГДЕ
| КурсыВалютСрезПоследних.Валюта = &Валюта";
Запрос.УстановитьПараметр("Валюта", Валюта);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаДетальныеЗаписи.Следующий();
Объект.РасшифровкаПлатежа[0].Кратность = 1;
Объект.РасшифровкаПлатежа[0].Курс = 1;
Объект.РасшифровкаПлатежа[0].СуммаПлатежа = Объект.СуммаДокумента;
Объект.РасшифровкаПлатежа[0].СуммаРасчетов = Объект.СуммаДокумента * ВыборкаДетальныеЗаписи.Курс;
Сообщить("Кратность=" + Строка(Объект.РасшифровкаПлатежа[0].Кратность));
Сообщить("Курс=" + Строка(Объект.РасшифровкаПлатежа[0].Курс));
Сообщить("СуммаПлатежа=" + Строка(Объект.РасшифровкаПлатежа[0].СуммаПлатежа));
Сообщить("СуммаРасчетов=" + Строка(Объект.РасшифровкаПлатежа[0].СуммаРасчетов));
Во время выполнения загрузки данные заполнялись, сообщения выводили нужные цифры, я вставил вывод сообщений и после выполнения загрузки, данные сообщения вновь выводили пустые данные. Я не понимаю почему значения сбрасываются после загрузки. Скажите пожалуйста, какую информацию нужно вывести что бы понять что идет не так?
"После загрузки":
Валюта = Объект.ВалютаДенежныхСредств;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| КурсыВалютСрезПоследних.Курс
|ИЗ
| РегистрСведений.КурсыВалют.СрезПоследних КАК КурсыВалютСрезПоследних
|ГДЕ
| КурсыВалютСрезПоследних.Валюта = &Валюта";
Запрос.УстановитьПараметр("Валюта", Валюта);
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
ВыборкаДетальныеЗаписи.Следующий();
Объект.РасшифровкаПлатежа[0].Кратность = 1;
Объект.РасшифровкаПлатежа[0].Курс = 1;
Объект.РасшифровкаПлатежа[0].СуммаПлатежа = Объект.СуммаДокумента;
Объект.РасшифровкаПлатежа[0].СуммаРасчетов = Объект.СуммаДокумента * ВыборкаДетальныеЗаписи.Курс;
Сообщить("Кратность=" + Строка(Объект.РасшифровкаПлатежа[0].Кратность));
Сообщить("Курс=" + Строка(Объект.РасшифровкаПлатежа[0].Курс));
Сообщить("СуммаПлатежа=" + Строка(Объект.РасшифровкаПлатежа[0].СуммаПлатежа));
Сообщить("СуммаРасчетов=" + Строка(Объект.РасшифровкаПлатежа[0].СуммаРасчетов));
Во время выполнения загрузки данные заполнялись, сообщения выводили нужные цифры, я вставил вывод сообщений и после выполнения загрузки, данные сообщения вновь выводили пустые данные. Я не понимаю почему значения сбрасываются после загрузки. Скажите пожалуйста, какую информацию нужно вывести что бы понять что идет не так?
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот