Имя: Пароль:
1C
1С v8
Конвертация данных: в 7.7 не определяются параметры
0 jackill2611
 
07.08.12
10:44
Создаю правила обмена 7.7 - 8.2. В Конвертации на закладке Параметры задаю параметр "ДатаВводаМЦ", тип - дата, в диалоге не используется. Потом ПередВыгрузкойДанных такой обработчик:

Параметры.ДатаВводаМЦ = ?(ПустоеЗначение(ДатаОкончания) = 1, ДатаНачала, ДатаОкончания);


"?(ПустоеЗначение(ДатаОкончания) = 1, ДатаНачала, ДатаОкончания)" - дату возвращает, но Параметры.ДатаВводаМЦ все равно упрямо остается неопределено (ТипЗначения(Параметры.ДатаВводаМЦ) = 0).

Вопрос: в чем может быть дело?
1 не человек
 
07.08.12
10:47
(0) для 7.7 по другому параметры устанавливаются. в помощи посмотрите
2 не человек
 
07.08.12
10:50
+ (1) Для 1С:Предприятие 7.7:
Для инициализации параметров при выгрузке на платформе 1С:Предприятие 7.7 необходимо использовать функцию УстановитьЗначениеПараметраКонвертации(ИмяПараметра, Значение), где
ИмяПараметра – Строка           – имя устанавливаемого параметра
Значение        – Произвольный – значение устанавливаемого параметра
3 Йохохо
 
07.08.12
10:54
копипаст типовой
НомерСтроки = 0;
Если ТаблицаНастройкиПараметров.НайтиЗначение("Парам", НомерСтроки, "Имя") = 1 Тогда
   ТаблицаНастройкиПараметров.ПолучитьСтрокуПоНомеру(НомерСтроки);
   ТаблицаНастройкиПараметров.Значение = 0;
КонецЕсли;
4 jackill2611
 
07.08.12
11:02
УстановитьЗначениеПараметраКонвертации(Параметры.ДатаВводаМЦ,(?(ПустоеЗначение(ДатаОкончания) = 1, ДатаНачала, ДатаОкончания)));

Вроде идет в процедуру установки значения, но ПустоеЗначение(Параметры.ДатаВводаМЦ) = 1
5 не человек
 
07.08.12
11:04
(4) вместо Параметры.ДатаВводаМЦ надо написать "ДатаВводаМЦ"
6 jackill2611
 
07.08.12
11:05
УстановитьЗначениеПараметраКонвертации("ДатаВводаМЦ",(?(ПустоеЗначение(ДатаОкончания) = 1, ДатаНачала, ДатаОкончания)));

Извиняюсь, я на тот момент в 7.7 уже поправил, все равно ничего.
7 jackill2611
 
07.08.12
11:06
Процедура УстановитьЗначениеПараметраКонвертации(ИмяПараметра, ЗначениеПараметра)
   
   НомерСтроки = 0;
   
   Если ТаблицаНастройкиПараметров.НайтиЗначение(ИмяПараметра, НомерСтроки, "Имя") = 1 Тогда
       
       ТаблицаНастройкиПараметров.УстановитьЗначение(НомерСтроки, "Значение", ЗначениеПараметра)
   Иначе
       
       Сообщить("Значение параметра """ + ИмяПараметра + """ не установлено! Возможно, имя параметра указано не верно или параметр не редактируется в диалоге.", "!");
       
   КонецЕсли;
   
КонецПроцедуры //УстановитьЗначениеПараметраКонвертации()

=====================
ИмяПараметра = "ДатаВводаМЦ"
ЗначениеПараметра = '01.01.01'
(Из отладчика)
8 не человек
 
07.08.12
11:07
(7) ЗначениеПараметра = '01.01.01'  это ни о чем не говорит?
9 jackill2611
 
07.08.12
11:09
Проверяю: ТаблицаНастройкиПараметров.ВыбратьСтроку(), там видно, что ДатаВводаМЦ = (дата,которую установил),
но в обработчике Конвертация_ПослеЗагрузкиПравилОбмена на Параметры.ДатаВводаМЦ это не отображается.
10 jackill2611
 
07.08.12
11:12
Может в 7.7 как-то по другому получать установленные параметры? Вот те параметры, на которых стоит галочка "Диалог" (отображаются в форме выгрузки 7.7) через Параметры[ИмяПараметра] доступны, а этот - нет.
11 не человек
 
07.08.12
11:21
(10) поставь галочку "Диалог". посмотри, что получится.
12 jackill2611
 
07.08.12
11:22
Попробую.
13 jackill2611
 
07.08.12
11:41
Параметры.ДатаВводаОстатков = ?(ПустоеЗначение(ДатаОкончания) = 1, ДатаНачала, ДатаОкончания);
Параметры.ДатаКонцаПериодаВыгрузки = ДатаОкончания;
Если ПустоеЗначение(Параметры.ДатаВводаОстатков) = 1 Тогда
   Предупреждение("Не заполнена дата начала!");
   Отказ = 1;
   Возврат 1;    
КонецЕсли;

Что интересно, в другой конвертации (Комплексная 7.7  - БУ 8.2) это прекрасно работало.
14 jackill2611
 
07.08.12
12:03
Все, вопрос снимается. Обработчики установки параметров нужно писать в обработчике ПередВыгрузкойДанных, а не ПослеЗагрузкиПравилОбмена
15 Йохохо
 
07.08.12
12:52
угу, там
Если УстанавливатьВДиалоге = 1 Тогда                        ТаблицаНастройкиПараметров.НоваяСтрока();
т.е. не инициализируешь в УстановитьЗначениеПараметраКонвертации
16 jackill2611
 
07.08.12
15:48
Та в ПередВыгрузкойДанных можна вообще Параметры.МойПараметр = [Значение] и все :)