Имя: Пароль:
1C
1С v8
Перенос из ЗИК в ЗУП (ЗКБУ) - помогите!
0 vqwy
 
08.02.12
16:05
В силу особенностей ЗИКа (где-то ошибка в плановых начислениях) не переносятся плановые начисления по сотрудникам. Выгружаются по правилам, при загрузке попытка создать документ ПНУ - и хрен.
Есть мысль выгружать частями. В базе около 1000 сотров, выгрузку хотя бы по 100.
Вопрос: где это подправить в КД, чтобы он не единым файлом хреначил, а по кускам?
1 vqwy
 
08.02.12
16:05
кусок = порция сотров
2 mozzga
 
08.02.12
16:08
делай в транзации по 100 ставится в настройках при загрузке, а вот разные файлы вроде никак нельзя
3 vqwy
 
08.02.12
16:13
(2) не помогло это
грузит он весь файл, файл размером 170 мб
в финале пишет, что
Загрузка объекта № 54
   ИмяПКО                 =  ПлановыеНачисленияИУдержания
   ТипОбъекта             =  Перенос данных
   КодСообщения           =  

Ошибка при загрузке данных: {Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(6009)}: Значение не является значением объектного типа (ИмяТипа)
и досвидос
4 mozzga
 
08.02.12
16:16
делай загрузку в режиме отладки и потом посмотришь что не так
5 vqwy
 
08.02.12
16:18
и так в отладке, не помогает((
6 Skylark
 
08.02.12
16:23
В КД не надо править. Правь в обработке выгрузки из ЗиК.
7 Skylark
 
08.02.12
16:25
Насчет ЗБУ не скажу, а вот при переносе ЗиК-ЗУП он на доп. код прописанный в правилах выгрузки кладет, и выполняет код, прописанный в соответствующих процедурах обработки выгрузки.
8 Skylark
 
08.02.12
16:28
Я разбивал по первым буквам фамилий

вот здесь

Функция ПВД_ПередОбработкойПравила_ПлановыеНачисленияИУдержания(ИмяПКО, Правило, ИсходящиеДанные, ВыборкаДанных)

в цикле
добавил код

           Для НомерПоПорядку = 1 по ПорцияСотрудников.РазмерСписка() Цикл
               Сотрудник = ПорцияСотрудников.ПолучитьЗначение(НомерПоПорядку);

               //доп код
               Если Лев(СокрЛП(ВРЕГ(Сотрудник.Наименование)), 1) <> СокрЛП(ВРЕГ(ПерваяБуква)) Тогда
                   Продолжить;
               КонецЕсли;
9 vqwy
 
08.02.12
17:27
(8) это в правилах выгрузки Зик В ЗКБУ , в самих?
10 vqwy
 
08.02.12
17:39
Буду проверять.
Получается, эта вставка позволит выгрузить по буквам.
В правилах, в начале ПВД, стоит выборка
ВыборкаДанных = СоздатьОбъект("СписокЗначений")
ВыборкаДанныхПлановыеНачисления = СоздатьТЗПлановыеНачисления();
...

Вот на этом этапе можно сделать отбор?
11 vqwy
 
08.02.12
17:53
кто бы помог...
12 vqwy
 
08.02.12
17:57
(8) не работает этот отбор у меня
все равно грузит всех подряд, независимо от буквы алфавита
13 Skylark
 
08.02.12
17:58
(9) Нет, НЕ в правилах, я же руским языком пишу. В обработке, которая эти правила использует. V7exp.ert вроде
14 vqwy
 
08.02.12
17:58
(13) спасибо! щас!
15 vqwy
 
08.02.12
18:10
Переменная не определена (ПерваяБуква)
16 vqwy
 
08.02.12
18:11
может, просто "А" поставить...
17 vqwy
 
08.02.12
18:46
Еще вопрос.
Какое ПВД выгружает данные по стажу сотрудников из 7.7 ? Кадровые данные (за все время)"? Можно ли эти данные также разбить по фамилиям?
18 vqwy
 
08.02.12
18:50
Т.к. при стандартной загр-выгр не переносятся данные по стажу и в итоге не формируются начисления типа выслуги лет.
19 philll
 
08.02.12
18:54
А вот извиняюсь за небольшой оффтоп, у меня тоже плановые не загружаются - но там пересекаются одинаковые виды расчетов в одном периоде у сотрудника.

Можно что-то вроде (8) вставить и скажем один вид расчета исключить из переноса?
20 Skylark
 
09.02.12
17:56
(19) В таких случаях помогает открытие формы документа "Перенос данных" перед его записью - ищете проблемные строчки и вручную их исправляете, после чего проводите документ.

Процедура ПередЗаписью(Отказ)
Форма = ЭтотОбъект.ПолучитьФорму();
Форма.Открыть();
21 philll
 
09.02.12
18:05
спасибо, попробую
Кaк может человек ожидaть, что его мольбaм о снисхождении ответит тот, кто превыше, когдa сaм он откaзывaет в милосердии тем, кто ниже его? Петр Трубецкой