Вход | Регистрация

1С:Предприятие ::

Метки: 

Конвертация данных - Передача параметров в алгоритм

Я
   VladSt
 
09.10.15 - 14:32
Добрый день.
Делаю конвертацию из 1С77 в 1C8, в ПВД создаю таблицу значений и заполняю поля. Для заполнения одного поля вызываю алгоритм(функцию), которая создаст какое-то значение и вернет его.
И вот тут я не знаю как передать в эту функцию параметры:
[img]http://i.imgur.com/CK9z5Z2.png[/img]

ругается что переменная Спр не определена. Подскажите
 
  Рекламное место пустует
   АдинС
 
1 - 09.10.15 - 14:37
Может  в одном из вариантов "С" не той раскладкой написана?))
   бомболюк
 
2 - 09.10.15 - 14:38
Я когда то попробовал это дело у меня не полетело, не работает это мне кажется.
   Mankubus
 
3 - 09.10.15 - 14:41
покажи как вызываешь алгоритм
   АдинС
 
4 - 09.10.15 - 14:41
(2) Что не работает? алгоритмы в КД?
   бомболюк
 
5 - 09.10.15 - 14:42
(4) с параметрами
   VladSt
 
6 - 09.10.15 - 14:43
   Mankubus
 
7 - 09.10.15 - 14:46
параметры нужны для вызова из ПКО.
в ПВД пиши:
СерияИзАлгоритма = Неопределено;
Выполнить(Алгоритмы.ВернутьСериюНоменклатуры);
ТЧАккумы.СерияНоменклатуры = СерияИзАлгоритма ;

а в конце алгоритма определяй серию:
СерияИзАлгоритма  = мояСерия
   бомболюк
 
8 - 09.10.15 - 14:46
так это семерка ;-)
Попробуй в теле алгоритма вместо Спр.Код писать ИсходящиеДанные.Код;
   АдинС
 
9 - 09.10.15 - 14:48
(8) Так ошибка то похоже при компиляции самого алгоритма..
причем тут семерка?
   PLUT
 
10 - 09.10.15 - 14:49
(0) почитал бы "знак вопросика" в алгоритмах, для чего параметры используются

а в алгоритмах все твои переменные обормотчика ПКС доступны, из которого ты этот алгоритм вызываешь

(9) Возврат 1 человека смутил :)

клюшками попахивает
 
  Рекламное место пустует
   АдинС
 
11 - 09.10.15 - 14:49
(5) Возможно ты и прав, просмотрел несколько типовых правил... там во всех алгоритмов нету параметров.... 1С как всегда, что-нибудь да не работает как задуманно..
   бомболюк
 
12 - 09.10.15 - 14:50
(9) в 7ке алгоритмы совсем иначе вызываются
   PLUT
 
13 - 09.10.15 - 14:51
(11) "Поле "Параметры" используется при отключенном режиме совместимости. Используется для явного задания параметров алгоритмов при формировании отладочных модулей и модулей с кодом обработчиков. При включенном режиме совместимости в правилах заполнение не обязательно.

Синтаксис вызова любого алгоритма:  Выполнить(Алгоритмы.<ИмяАлгоритма>)
"

ваш КО
   VladSt
 
14 - 09.10.15 - 14:53
Вот как функция выглядит в коде:

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


    Сообщить("Попал в алгоритм!");
    Сообщить("Спр.Код: " + Спр);
    Возврат 1;


КонецФункции// ВернутьСериюНоменклатуры()
   АдинС
 
15 - 09.10.15 - 14:56
Тогда как в (8) должно работать..
   VladSt
 
16 - 09.10.15 - 15:00
Да, как в (8) работает, причем в параметрах в алгоритме можно ничего не писать.
Спасибо
   VladSt
 
17 - 09.10.15 - 15:43
Народ, а подскажите, как передавать, изменять и хранить параметр (ТаблицаЗначений) при работе конвертации?
Вот создаю в ПВД ТаблицуЗначений, потом передаю ее в параметр.
[img]http://i.imgur.com/Ju2gAVT.png[/img]
потом при работе конвертации, буду ее заполнять, а потом выгружу.

Когда перехожу в алгоритм, хотелось бы увидеть эту таблицу
а тут она пустая, параметр пустой, его нету. Вот результат:
[img]http://i.imgur.com/fvY2xaE.png[/img]
   VladSt
 
18 - 09.10.15 - 15:57
или я не правильным путем иду?
   VladSt
 
19 - 09.10.15 - 16:15
Все, разобрался.
Объявлять параметр таблицей значений надо делать не в ПВД, а в обработчике ПередВыгрузкойДанных самой конвертации.
Параметры.ТЗ1Аккум = СоздатьОбъект("ТаблицаЗначений");            // для создания элемента справочника уатСерииНоменклатуры

Параметры.ТЗ1Аккум.НоваяКолонка("ТипАгрегата");                    // - СправочникСсылка.уатТипыАгрегатов.Аккумулятор

Параметры.ТЗ1Аккум.НоваяКолонка("Модель");                        // - ТипАгрегата, Производитель, Модель, Емкость, СрокСлужбы (мес.)

Параметры.ТЗ1Аккум.НоваяКолонка("СерийныйНомер");                // - строка

Параметры.ТЗ1Аккум.НоваяКолонка("Номенклатура");                // - СправочникСсылка.Номенклатура


Список тем форума
Рекламное место пустует  
ВНИМАНИЕ! Если вы потеряли окно ввода сообщения, нажмите Ctrl-F5 или Ctrl-R или кнопку "Обновить" в браузере.
Тема не обновлялась длительное время, и была помечена как архивная. Добавление сообщений невозможно.
Но вы можете создать новую ветку и вам обязательно ответят!
Каждый час на Волшебном форуме бывает более 2000 человек.
Рекламное место пустует