|
КД. как создать правило выгрузить справочник ОС + инвентарный номер из регистра | ☑ | ||
---|---|---|---|---|
0
Ivan_495
02.03.16
✎
14:26
|
Знатоки прекрасного инструмента конвертации данных подскажите , как создать правило выгрузить справочник ОС + инвентарный номер из регистра первоначальные сведения в справочник ОС
|
|||
1
Ivan_495
02.03.16
✎
14:28
|
справочник ОС нормально выгружается не могу вытащить и загрузить инвентарный
|
|||
2
Naumov
02.03.16
✎
14:28
|
Слишком дофига информации, чтобы однозначно ответить на этот вопрос.
|
|||
3
Ivan_495
02.03.16
✎
14:28
|
руками это можно сделать за 2 часа
|
|||
4
Ivan_495
02.03.16
✎
14:29
|
в ПКС инвномер передвыгрузкой создал правило
Если Источник.ЭтоГруппа тогда Отказ = Истина; иначе Попытка Запрос=Новый Запрос; Запрос.УстановитьПараметр("дт",ТекущаяДата()); Запрос.УстановитьПараметр("ОС",Источник); Запрос.Текст= "ВЫБРАТЬ | ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер |ИЗ | РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт,ОС=&ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних"; Выборка=Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Значение = Выборка.ИнвентарныйНомер; Иначе Отказ = Истина; КонецЕсли; исключение Отказ = Истина; КонецПопытки; КонецЕсли; |
|||
5
АнжелаДэвис
02.03.16
✎
14:31
|
(3) тогда не лохмать бабушку
|
|||
6
Alex S D
02.03.16
✎
14:32
|
(4) И ?
|
|||
7
Ivan_495
02.03.16
✎
14:36
|
инвентарный выгружается, но не загружается
если пишу Значение="11111" то инвентарный загружается |
|||
8
MaxS
02.03.16
✎
14:38
|
Источник это случайно не Объект?
|
|||
9
Ivan_495
02.03.16
✎
14:40
|
(8) в справке написано , что Источник это ссылка на объект
|
|||
10
Ivan_495
02.03.16
✎
14:59
|
(5) заказчик хочет обмен по правилам
|
|||
11
Ivan_495
02.03.16
✎
14:59
|
подскажите правильно делаю или нет?
|
|||
12
Ivan_495
02.03.16
✎
15:07
|
почему-то в файле выгрузки "Код" вместо "инвномер"
</Свойство> - <Свойство Имя="Код"> <Значение>000002775</Значение |
|||
13
Naumov
02.03.16
✎
15:10
|
Куда написал, туда и ставит.
|
|||
14
Ivan_495
02.03.16
✎
15:10
|
хотя правильно код там тоже должен быть, но поля "инвномер" нет
|
|||
15
Naumov
02.03.16
✎
15:11
|
(14) И куда оно впихнет ?
|
|||
16
Карупян
02.03.16
✎
15:13
|
инвентарный номер устанавливается ДОКУМЕНТОМ
|
|||
17
Карупян
02.03.16
✎
15:14
|
например Ввод остатков.
Самому тут велосипед лучше не изобретать, а взять типовые правила за основу |
|||
18
Ivan_495
02.03.16
✎
15:17
|
(16) в курсе
(17) не типовая конфа выгружаю спр ОС + инв из РС --------в---> спр ОС ( инв в реквизит инвномер) |
|||
19
Naumov
02.03.16
✎
15:18
|
(18) Сделай ПКС с пустым источником и приемником Инв, который у тебя реквизит.
В обработчик ПередВыгрузкой впихни код, что ты написал. |
|||
20
Ivan_495
02.03.16
✎
15:20
|
(19) именно так все уже сделано
|
|||
21
Naumov
02.03.16
✎
15:21
|
12 говорит, что не так
|
|||
22
Ivan_495
02.03.16
✎
15:27
|
когда вместо кода (4) пишу
Значение="55555" все нормально попадает (использую поле заводской номер) <Свойство Имя="ЗаводскойНомер"> <Значение>55555</Значение> </Свойство> |
|||
23
Ivan_495
02.03.16
✎
15:30
|
в коде городил обход групп
Если Источник.ЭтоГруппа тогда Отказ = Истина; иначе может неправильно? на ПКС ЭтоГруппа стоит галочка |
|||
24
Ivan_495
02.03.16
✎
15:43
|
исправил код ПКС инвномер передвыгрузкой
Запрос=Новый Запрос; Запрос.УстановитьПараметр("дт",ТекущаяДата()); Запрос.УстановитьПараметр("ОС",Источник); Запрос.Текст= "ВЫБРАТЬ | ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер |ИЗ | РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт,ОС=&ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних"; Выборка=Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Значение = Выборка.ИнвентарныйНомер; Иначе Отказ = Истина; КонецЕсли; ругается Ошибка при выгрузке данных для узла плана обмена ТипОбъекта = Справочник объект: Основные средства Объект = Оборудование РП 6/0.4 кВ № 1 ОписаниеОшибки = Ошибка в обработчике события ПередВыгрузкой (свойства) ПКО = ОсновныеСредства (Справочник: Основные средства) ПКС = 6 (--> ЗаводскойНомер) Объект = Оборудование РП 6/0.4 кВ № 1 (Справочник объект: Основные средства) СвойствоПриемника = ЗаводскойНомер (Строка) Обработчик = ПередВыгрузкойСвойства ОписаниеОшибки = Ошибка при вызове метода контекста (Выполнить): Поле не найдено "ОС" РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт,<<?>>ОС=&ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних ПозицияМодуля = (13) КодСообщения = 55 ПозицияМодуля = Обработка.ОбменДаннымиXML.МодульОбъекта(1648) КодСообщения = 72 УзелПланаОбмена = УПП Произошла ошибка при выгрузке объектов. Было выгружено: 0 Техническая информация: ОписаниеОшибки = Ошибка при вызове метода контекста (Выполнить): {(4, 81)}: Поле не найдено "ОС" |
|||
25
Ivan_495
02.03.16
✎
15:45
|
похоже у групп не находит реквизит заводской номер
как правильно обойти группы ,чтобы не обрабатывались |
|||
26
Naumov
02.03.16
✎
15:46
|
(25) Ты же сам писал в (4)
Если Источник.ЭтоГруппа тогда Отказ = Истина; иначе |
|||
27
Ivan_495
02.03.16
✎
15:48
|
(26) с такой конструкцией ЗаводскойНомер (инвентарный) не попадает в выгрузку
|
|||
28
Ivan_495
02.03.16
✎
15:50
|
а "Попытка исключение" КД вообще понимает?
|
|||
29
Naumov
02.03.16
✎
15:52
|
(28) Дело не в попытке.
У тебя запрос тупо не работает, т.к. нет поля ОС Что за конфигурация источник? Если что-то от типовой, то там измерение ОсновноеСредство зовется. |
|||
30
Ivan_495
02.03.16
✎
15:59
|
написал с обходом групп
Если Источник.ЭтоГруппа тогда Отказ = Истина; Иначе Запрос=Новый Запрос; Запрос.УстановитьПараметр("дт",ТекущаяДата()); Запрос.УстановитьПараметр("ОС",Источник); Запрос.Текст= "ВЫБРАТЬ | ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер |ИЗ | РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт,ОС=&ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних"; Выборка=Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Значение = Выборка.ИнвентарныйНомер; Иначе Отказ = Истина; КонецЕсли; КонецЕсли; |
|||
31
Ivan_495
02.03.16
✎
16:00
|
(29) т.е. вместо
Запрос.УстановитьПараметр("ОС",Источник); д.б. Запрос.УстановитьПараметр("ОС",Источник.ОсновноеСредство); |
|||
32
Ivan_495
02.03.16
✎
16:01
|
выгружаю из бухгалтерии в упп
|
|||
33
Карупян
02.03.16
✎
16:11
|
Источник.Ссылка
|
|||
34
Ivan_495
02.03.16
✎
16:12
|
(29) исправил измерение спасибо
Если Источник.ЭтоГруппа тогда Отказ = Истина; Иначе Запрос=Новый Запрос; Запрос.УстановитьПараметр("дт",ТекущаяДата()); Запрос.УстановитьПараметр("ОС",Источник); Запрос.Текст= "ВЫБРАТЬ | ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних.ИнвентарныйНомер |ИЗ | РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт, ОсновноеСредство = &ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних"; Выборка=Запрос.Выполнить().Выбрать(); Если Выборка.Следующий() Тогда Значение = Выборка.ИнвентарныйНомер; Иначе Отказ = Истина; КонецЕсли; КонецЕсли; но выдает ошибку Ошибка при выгрузке данных для узла плана обмена ТипОбъекта = Справочник объект: Основные средства Объект = Цифровой регистратор диспетчерских переговоров ОписаниеОшибки = Ошибка в обработчике события ПередВыгрузкой (свойства) ПКО = ОсновныеСредства (Справочник: Основные средства) ПКС = 6 (--> ЗаводскойНомер) Объект = Цифровой регистратор диспетчерских переговоров (Справочник объект: Основные средства) СвойствоПриемника = ЗаводскойНомер (Строка) Обработчик = ПередВыгрузкойСвойства ОписаниеОшибки = Ошибка при вызове метода контекста (Выполнить): Неверные параметры в операции сравнения. Нельзя сравнивать поля неограниченной длины и поля несовместимых типов. РегистрСведений.ПервоначальныеСведенияОСБухгалтерскийУчет.СрезПоследних(&дт, ОсновноеСредство <<?>>= &ОС) КАК ПервоначальныеСведенияОСБухгалтерскийУчетСрезПоследних ПозицияМодуля = (14) КодСообщения = 55 ПозицияМодуля = Обработка.ОбменДаннымиXML.МодульОбъекта(1648) КодСообщения = 72 УзелПланаОбмена = УПП Произошла ошибка при выгрузке объектов. Было выгружено: 10 Техническая информация: ОписаниеОшибки = Ошибка при вызове метода контекста (Выполнить): {(4, 99)}: Неверные параметры в операции сравнения. Нельзя сравнивать поля |
|||
35
Ivan_495
02.03.16
✎
16:15
|
(33) спасибо заработало
|
|||
36
Ivan_495
02.03.16
✎
16:29
|
подскажите а что сделать , чтобы при изменении инвентарного номера он всегда выгружался
|
|||
37
Ivan_495
02.03.16
✎
16:30
|
?
|
|||
38
Naumov
02.03.16
✎
16:36
|
(36) если у тебя объект замещается при выгрузке, то он будет всегда ставиться.
|
|||
39
Ivan_495
02.03.16
✎
16:39
|
(38) а чтобы он замещался каждый раз при выгрузке , какая галка должна стоять?
|
|||
40
Ivan_495
02.03.16
✎
16:40
|
"не запоминать выгруженные объекты"?
|
|||
41
Ivan_495
02.03.16
✎
16:45
|
а по реквизиту объекта нельзя настроить ?
|
|||
42
Ivan_495
02.03.16
✎
16:48
|
(40) галка "не запоминать выгруженные объекты" не помогла
|
|||
43
Ivan_495
02.03.16
✎
17:07
|
up
|
|||
44
Naumov
02.03.16
✎
17:16
|
Есть галка "не замещать". если установлена, то найденный объект не будет замещаться.
|
|||
45
Ivan_495
02.03.16
✎
17:24
|
(44) галка "не замещать" не установлена
на закладке настройки для ПКО спр-ка основные средства |
|||
46
Ivan_495
02.03.16
✎
17:27
|
объект то может и замещается, но нужно чтобы замещался реквизит
было ОС="Здание" инв="1111" стало ОС="Здание" инв="2222" |
|||
47
Naumov
02.03.16
✎
17:28
|
объект перезаписывается полностью. Изменится реквизит в источнике, значит изменится и в приемнике.
|
|||
48
Ivan_495
02.03.16
✎
17:43
|
что-то я сомневаюсь
http://forum.infostart.ru/forum85/topic129686/ |
|||
49
Ivan_495
02.03.16
✎
17:46
|
у меня сейчас при первой загрузке инвентарный меняется, а если после этого еще раз его меняешь, то объект с изменным инвентарным даже не выгружается
|
|||
50
Ivan_495
02.03.16
✎
17:51
|
хотя все логично "инвентарный" не является реквизитом спр-ка, а выбирается из регистра сведений, значит наверно нужно отдельное ПКО , что анализировать замещать его или нет
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |