|
v7: поменять реквизит в справочнике Единицы | ☑ | ||
---|---|---|---|---|
0
onguk
09.02.13
✎
00:33
|
написал обработку для замены реквизитов справочника Единицы в Комплексной. Реквизит ОКЕИ по отладчику все нормальн, а по факту
не заносит в справочник. Прошу подскажите что на так. Спр=СоздатьОбъект("Справочник.Номенклатура"); Ед=СоздатьОбъект("Справочник.Единицы"); Оке=СоздатьОбъект("Справочник.ОКЕИ"); Спр.ВыбратьЭлементы();//перебираем справочник-владелец Пока спр.ПолучитьЭлемент()=1 Цикл Если спр.ЭтоГруппа()=1 Тогда продолжить; КонецЕсли; Ед.ИспользоватьВладельца(спр.ТекущийЭлемент()); Ед.Новый(); Оке.ВыбратьЭлементы(); Пока Оке.ПолучитьЭлемент()=1 Цикл Если Оке.Наименование="шт" Тогда Прервать; КонецЕсли; продолжить; КонецЦикла; Ед.УстановитьАтрибут("ОКЕИ",Оке.Наименование); Ед.Коэффициент=1; Ед.записать(); конецЦикла; |
|||
1
Джордж1
09.02.13
✎
00:37
|
Ед.УстановитьАтрибут("ОКЕИ",Оке.ТекущийЭлемент());
|
|||
2
Cthulhu
09.02.13
✎
00:54
|
И - это, как бы помягче-то сказать. в цикле перебора и изменения ВСЕХ элементов справочника - делать для КАЖДОГО из них перебор другого справочника... это - феерическая глупость, да (мягко выражаясь!).
|
|||
3
zak555
09.02.13
✎
00:55
|
ты лучше создавай, а потом дубли удаляй
|
|||
4
onguk
09.02.13
✎
00:58
|
Спасибо все сработало но проблемы остались с этим справочником а именно в справочнике Номенклатура
не отображаются ни шт ни штрихкод. В файле SC84.dbf это база Номенклатуры в полях SP86 и SP94 не происываются номера ID Справочника Единицы как быть в этом случае |
|||
5
onguk
09.02.13
✎
01:01
|
Cthulhu согласен это от того, что когда упрешься в одно а
глупость творишь в другом. :) |
|||
6
Cthulhu
09.02.13
✎
01:06
|
// и ещё ляпов хватает.
// - для объекта ".ЭтоГруппа" не отрабатывает - только для ссылки на элемент; // - в этом справонике есть куча периодиеских реквизитов, для них тупо присвоить не сработает // - дубликаты с таким ОКЕИ плодить - вообще тупость, сначала надо проверить - м.б. уж есть?.. // - ... Оке=СоздатьОбъект("Справочник.ОКЕИ"); Оке.ВыбратьЭлементы(); Пока Оке.ПолучитьЭлемент()<>0 Цикл Если Оке.Наименование="шт" Тогда Прервать КонецЕсли КонецЦикла; Оке=Оке.ТекущийЭлемент(); Если Оке.Выбран()<>1 Тогда Оке="Единица ""шт"" для установки в ОКЕИ НЕ НАЙДЕНА!.. Давай, до свиданья!.."; Сообщить(Оке,"!!!"); Предупреждение(Оке,12); СтатусВозврата(0); Возврат; КонецЕсли; Спр=СоздатьОбъект("Справочник.Номенклатура"); Ед=СоздатьОбъект("Справочник.Единицы"); Ед.ИспользоватьДату(ВыбДатаУстановкиПериодики); Спр.ВыбратьЭлементы(); Пока спр.ПолучитьЭлемент()<>0 Цикл Если Спр.ТекущийЭлемент().ЭтоГруппа()<>0 Тогда Продолжить КонецЕсли; Ед.ИспользоватьВладельца(Спр.ТекущийЭлемент()); Ед.ВыбратьЭлементы(); Пока Ед.ПолучиьЭлемент()<>0 Цикл Если Ед.ОКЕИ=Оке Тогда Прервать КонецЕсли КнецЦикла; // Ну или НайтиЭлементПоРеквизиту если можно Если Ед.Выбран()<>0 Тогда Продолжить КонецЕсли; Ед.Новый(); Ед.ОКЕИ=Оке; Ед.Коэффициент=1; Ед.записать(); КонецЦикла; |
|||
7
onguk
09.02.13
✎
01:23
|
Cthulhu большое спасибо за внимание.
Сильно не заморачивался по причине: Номенклатуру заношу в чистую базу с xls се заносится кроме Единици измерения их вот и пытаюсь занести отдельно а справочник Единицы но не получается. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |