|   |   | 
| 
 | Подскажите в чем ошибка? | ☑ | ||
|---|---|---|---|---|
| 0
    
        espanol 27.02.12✎ 15:22 | 
        Запрос = СоздатьОбъект("ODBCRecordSet");
  ТекстЗапроса = " |SELECT | Подразделение.CODE as [ПодразделениеКод $Строка] |, RTRIM(Подразделение.DESCR) as [ПодразделениеНаименование $Строка] |, RTRIM(Номенклатура.CODE) as [НоменклатураКод $Строка] |, LTRIM(RTRIM($Номенклатура.НомерПоКаталогу)) as [НомерПоКаталогу $Строка] |, RTRIM(Номенклатура.DESCR) as [НоменклатураНаименование $Строка] |, RTRIM(БазовыеЕдиницы.CODE) as [ЕдИзмКод $Строка] |, RTRIM(БазовыеЕдиницы.DESCR) as [ЕдИзмНаименование $Строка] |, ОстаткиСклад.КоличествоОстаток as [Количество $Число] |, ОстаткиСклад.СтоимостьУпрОстаток as [СтоимостьУпр $Число] |, ОстаткиСклад.СтоимостьВалОстаток as [СтоимостьВал $Число] |, ОстаткиСклад.СтоимостьРубОстаток as [СтоимостьРуб $Число] |, ОстаткиСклад.НДСОстаток as [НДС $Число] |FROM | $РегистрОстатки.Склад(:ВыбДата~ | , | , | ,(Подразделение,Номенклатура) | ,(Количество,СтоимостьУпр,СтоимостьВал,СтоимостьРуб,НДС) | ) ОстаткиСклад |LEFT JOIN | $Справочник.Подразделения Подразделение ON Подразделение.ID=ОстаткиСклад.Подразделение |LEFT JOIN | $Справочник.Номенклатура Номенклатура ON Номенклатура.ID=ОстаткиСклад.Номенклатура |LEFT JOIN | $Справочник.БазовыеЕдиницы БазовыеЕдиницы ON БазовыеЕдиницы.ID=$Номенклатура.БазоваяЕдиница |WHERE | (ОстаткиСклад.КоличествоОстаток>0) | AND | ((ОстаткиСклад.СтоимостьУпрОстаток>=0) | OR | (ОстаткиСклад.СтоимостьВалОстаток>=0) | OR | (ОстаткиСклад.СтоимостьРубОстаток>=0) | ) | AND | ОстаткиСклад.Подразделение = :ВыбПодразделение |ORDER BY | Подразделение.DESCR |, $Номенклатура.НомерПоКаталогу |"; Спр = СоздатьОбъект("Справочник.Подразделения"); Если Спр.НайтиПоКоду("00000002", 0) = 1 Тогда Значение = Спр.ТекущийЭлемент(); Иначе Отказ = 1; КонецЕсли; Запрос.УстановитьТекстовыйПараметр("ВыбДата", ТекущаяДата()); Запрос.УстановитьТекстовыйПараметр("ВыбПодразделение", Значение); КоллекцияОбъектов = Запрос.ВыполнитьИнструкцию(ТекстЗапроса); КоллекцияОбъектов.Свернуть("ПодразделениеКод,ПодразделениеНаименование,НоменклатураКод,НомерПоКаталогу,НоменклатураНаименование,ЕдИзмКод,ЕдИзмНаименование","Количество,СтоимостьУпр,СтоимостьВал,СтоимостьРуб,НДС"); ВыгрузитьПоПравилу(КоллекцияОбъектов, , , , "ВводОстатковТоваров"); КОНВЕРТАЦИЯ ДАННЫХ: При выгрузке выдает ошибку: Начало выгрузки: 27.02.12 14:39:04 Ошибка исполнения обработчика: ПВД_ПередОбработкойПравила_ВводОстатковТоваров - Номер за пределами значения! Значение = Объект.ПолучитьАтрибут(Имя); {\V77EXP.ERT(7585)}: Неверное имя атрибута | |||
| 1
    
        fisher 27.02.12✎ 15:44 | 
        А ты чего хотел.
  ПКО тупо пытается из той фигни что ты передал (таблицы) получить данные на вход своих ПКС. А там мало того что нет одноименных реквизитов, так это еще и таблица. | |||
| 2
    
        espanol 27.02.12✎ 15:54 | 
        (1) а надо передавать выборку чтоли?
  делал вот так: Запрос.Выполнить(ТекстЗапроса); ВыгрузитьПоПравилу(Запрос, , , , "ВводОстатковТоваров"); чета не выходит.... | |||
| 3
    
        espanol 27.02.12✎ 15:59 | 
        (1) надо ли в ПКС ставить флажок "получить значение из входящих данных"?     | |||
| 4
    
        fisher 27.02.12✎ 18:21 | 
        (2) Я ж не ясновидящий, чего-ты там из чего выкрутить хочешь.
  (3) Только для тех свойств, которые ты передаешь через входящие данные. В твоем примере ты не используешь входящие данные. Значит не надо. | |||
| 6
    
        espanol 27.02.12✎ 21:48 | 
        Вообщем я создал Агоритм: запрос, параметр по складу, заканчивается так:
  РезультатЗапроса = Запрос.ВыполнитьИнструкцию(ТекстЗапроса); РезультатЗапроса.Сортировать("НоменклатураНаименование",); Возврат РезультатЗапроса; В ПВД указал так: ВыборкаДанных = СоздатьОбъект("ТаблицаЗначений"); ВыборкаДанных.НоваяКолонка("Товары"); ВыборкаДанных.НоваяКолонка("СкладКомпании"); ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.Товары = ВводОстатковТоваров(); Создал ПКО с теми полями что и в запросе получаю. Вот если использовать 1 параметр в запросе, то он нормально выгружает, создается необходимый документ и все хорошо, но, параметр это склад, а складов много, и как сделать так чтобы на каждый склад создавался документ? Заранее спасибо! | |||
| 7
    
        espanol 28.02.12✎ 09:40 | 
        Есть кто знает ответ? =)     | |||
| 8
    
        fisher 28.02.12✎ 11:44 | 
        (6) Т.е. ты только табличную часть передаешь? А реквизиты шапки? А поля поиска какие?
  Но в общем, точно так же и делаешь. Каждая строка таблицы "ВыборкаДанных" будет выгружена как отдельный док. Значения колонок будут загружены в одноименные ПКС шапки. В значение колонки "Товары" для каждой строки засовываешь вложенную таблицу, которая будет загружена как табличная часть. Чтобы каждый раз не выгружались новые доки, нужно озаботится правильными полями поиска. | |||
| 9
    
        espanol 28.02.12✎ 11:49 | 
        (8) Я делаю выгрузку по РЕГИСТРУ, там нету шапки.
  поля как: номен, цен, сум, едизм, склад. вот эта таблица и все... спасибо.... но вопросов стало больше чем ответов.... чтоза поля поиска, как оно само по строке сделает документ.... | |||
| 10
    
        fisher 28.02.12✎ 12:05 | 
        (9) Ага. Поциент начинает по каплям сочится информацией.
  В ПКО у тебя приемник какого типа? Только без отсебятины, как в КД написано? | |||
| 11
    
        espanol 28.02.12✎ 12:07 | 
        (10)
  ДокументСсылка.ВводОстатковТоваров | |||
| 12
    
        fisher 28.02.12✎ 12:08 | 
        (11) Тогда ты делаешь выгрузку в документ. У документа бывает шапка. В которой как минимум бывает дата и номер.     | |||
| 13
    
        fisher 28.02.12✎ 12:12 | 
        (9) А само документ сделает элементарно. У тебя же делало уже, сам сказал. Справку по обработчикам читаешь?
  ВыборкаДанных - Запрос, Результат запроса, Выборка из результата запроса или произвольная коллекция выгружаемых объектов. Используется, когда способ выгрузки данных - Произвольный алгоритм. Если определить данную переменную, то обход коллекции и выгрузка объектов будет осуществляться автоматически | |||
| 14
    
        espanol 28.02.12✎ 12:16 | 
        (12) все верно, шапка заполняется стандартными реквизитами кроме склада, склад надо брать из ТЗ который получаю в алгоритме.     | |||
| 15
    
        espanol 28.02.12✎ 12:19 | 
        (13) сам документ делает, да, но всего навсего один! но надо разбивать ТЗ на блоки по Складам, если склад меняется, сравнивая предыдущую и текущую строку ТЗ, то прекращаем заполнение текущего документа и создаем новый документ.     | |||
| 16
    
        fisher 28.02.12✎ 12:19 | 
        (14) Ну так и делай. Не важно, как ты исходные данные из регистра получаешь.
  Чтобы нормально выгрузилось, тебе нужно правильно заполнить таблицу, которую в "ВыборкаДанных" пихаешь. Каждая строка будет пытаться выгрузиться как отдельный документ. Т.е. в каждую строчку тебе нужно засунуть свой склад и свою табличную часть (как вложенную таблицу). | |||
| 17
    
        espanol 28.02.12✎ 12:20 | 
        (15) это самое и не понимаю как и где делоть....     | |||
| 18
    
        espanol 28.02.12✎ 12:21 | 
        (16) сейчас подумаю как это реализовать....     | |||
| 19
    
        fisher 28.02.12✎ 12:23 | 
        (17) Как где. Там где "ВыборкаДанных" заполняешь. Тупо пишешь семерочный код, который это все сделает. Задача по информатике для второго класса.
  Ты ж сам уже предложил вариант. Обходишь исходную таблицу отсортированную по складам. Для каждого склада формируешь отдельную таблицу. Полученные результаты пихаешь как отдельные строчки в "ВыборкаДанных". | |||
| 20
    
        espanol 28.02.12✎ 12:24 | 
        (19) чета голова уже закружилась )) 
  получается что в ПВД, когда я указываю ВводОстатковТоваров(), я получаю свою ТаблицуЗначений возвращенную из Алгоритма? | |||
| 21
    
        espanol 28.02.12✎ 12:25 | 
        я просто запутался слехка уже...     | |||
| 22
    
        fisher 28.02.12✎ 12:33 | 
        Что-то ты в трех соснах запутался. Своему коду не веришь, что ли? :)     | |||
| 23
    
        espanol 28.02.12✎ 12:35 | 
        (22) верю, но я засомневался на минутку )) со всех сторон спрашивают всякое, дергают, дел куча.... аааа.... как по башке молотком ударили     | |||
| 24
    
        fisher 28.02.12✎ 12:35 | 
        Я с 1С++ уже давно не работал. Но судя по обрывкам твоего кода метод ВыполнитьИнструкцию() объекта ODBCRecordSet возвращает именно таблицу значений.     | |||
| 25
    
        espanol 28.02.12✎ 12:38 | 
        (24) Ну да, спасибо большое! Сейчас алгоритм навояю и отпишу результат :)     | |||
| 26
    
        espanol 28.02.12✎ 15:07 | 
        что-то вот никак не выходит, в алгоритме запросе у меня 3 склада:
  | Подразделение.CODE IN('00000021','00000020','00000016') В ПВД код: ВыборкаДанных = СоздатьОбъект("ТаблицаЗначений"); ВыборкаДанных.НоваяКолонка("Товары"); ВыборкаДанных.НоваяКолонка("СкладКомпании"); //ВыборкаДанных.НоваяСтрока(); //ВыборкаДанных.Товары = ВводОстатковТоваров(); ТабЗнач = СоздатьОбъект("ТаблицаЗначений"); ТабЗнач.НоваяКолонка("ПодразделениеКод"); ТабЗнач.НоваяКолонка("ПодразделениеНаименование"); ТабЗнач.НоваяКолонка("НоменклатураКод"); ТабЗнач.НоваяКолонка("НомерПоКаталогу"); ТабЗнач.НоваяКолонка("НоменклатураНаименование"); ТабЗнач.НоваяКолонка("ЕдИзмКод"); ТабЗнач.НоваяКолонка("ЕдИзмНаименование"); ТабЗнач.НоваяКолонка("Количество"); ТабЗнач.НоваяКолонка("СуммаВсего"); ТабЗнач.НоваяКолонка("СтоимостьВал"); ТабЗнач.НоваяКолонка("Сумма"); ТабЗнач.НоваяКолонка("СуммаНДС"); ТаблицаЗначений = ВводОстатковТоваров(); Флаг = 0; ПодразделениеКодПред = ""; ТаблицаЗначений.ВыбратьСтроки(); Пока ТаблицаЗначений.ПолучитьСтроку() = 1 Цикл ПодразделениеКодТек = ТаблицаЗначений.ПодразделениеКод; Если ПодразделениеКодТек = ПодразделениеКодПред Тогда ТабЗнач.НоваяСтрока(); ТабЗнач.ПодразделениеКод = ТаблицаЗначений.ПодразделениеКод; ТабЗнач.ПодразделениеНаименование = ТаблицаЗначений.ПодразделениеНаименование; ТабЗнач.НоменклатураКод = ТаблицаЗначений.НоменклатураКод; ТабЗнач.НомерПоКаталогу = ТаблицаЗначений.НомерПоКаталогу; ТабЗнач.НоменклатураНаименование = ТаблицаЗначений.НоменклатураНаименование; ТабЗнач.ЕдИзмКод = ТаблицаЗначений.ЕдИзмКод; ТабЗнач.ЕдИзмНаименование = ТаблицаЗначений.ЕдИзмНаименование; ТабЗнач.Количество = ТаблицаЗначений.Количество; ТабЗнач.СуммаВсего = ТаблицаЗначений.СуммаВсего; ТабЗнач.СтоимостьВал = ТаблицаЗначений.СтоимостьВал; ТабЗнач.Сумма = ТаблицаЗначений.Сумма; ТабЗнач.СуммаНДС = ТаблицаЗначений.СуммаНДС; Флаг = 1; Иначе Если Флаг = 1 Тогда ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.Товары = ТабЗнач; ВыборкаДанных.СкладКомпании = ПодразделениеКодПред; ТабЗнач.УдалитьСтроки(); Иначе ТабЗнач.НоваяСтрока(); ТабЗнач.ПодразделениеКод = ТаблицаЗначений.ПодразделениеКод; ТабЗнач.ПодразделениеНаименование = ТаблицаЗначений.ПодразделениеНаименование; ТабЗнач.НоменклатураКод = ТаблицаЗначений.НоменклатураКод; ТабЗнач.НомерПоКаталогу = ТаблицаЗначений.НомерПоКаталогу; ТабЗнач.НоменклатураНаименование = ТаблицаЗначений.НоменклатураНаименование; ТабЗнач.ЕдИзмКод = ТаблицаЗначений.ЕдИзмКод; ТабЗнач.ЕдИзмНаименование = ТаблицаЗначений.ЕдИзмНаименование; ТабЗнач.Количество = ТаблицаЗначений.Количество; ТабЗнач.СуммаВсего = ТаблицаЗначений.СуммаВсего; ТабЗнач.СтоимостьВал = ТаблицаЗначений.СтоимостьВал; ТабЗнач.Сумма = ТаблицаЗначений.Сумма; ТабЗнач.СуммаНДС = ТаблицаЗначений.СуммаНДС; Флаг = 1; КонецЕсли; КонецЕсли; ПодразделениеКодПред = ПодразделениеКодТек; КонецЦикла; ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.Товары = ТабЗнач; ВыборкаДанных.СкладКомпании = ПодразделениеКодПред; ТабЗнач.УдалитьСтроки(); в итоге пусто.... веть ТабЗнач надо очищать чтобы туда запихивать новую ТЗ по новому складу, а если не очищать, то по всем 3 складам в один документ пихается.... бред какойто | |||
| 27
    
        fisher 28.02.12✎ 15:19 | 
        (26) Мда... Ну да ладно.
  В общем, ты в каждую строку выборки пишешь ссылку на одну и ту же ТЗ. А надо на разные. Их тоже в цикле создавать надо. | |||
| 28
    
        espanol 28.02.12✎ 15:36 | 
        (27)
  Не сработало по последнему складу тока заполняет.... ВыборкаДанных = СоздатьОбъект("ТаблицаЗначений"); ВыборкаДанных.НоваяКолонка("Товары"); ВыборкаДанных.НоваяКолонка("СкладКомпании"); //ВыборкаДанных.НоваяСтрока(); //ВыборкаДанных.Товары = ВводОстатковТоваров(); ТабЗнач = СоздатьОбъект("ТаблицаЗначений"); ТабЗнач.НоваяКолонка("ПодразделениеКод"); ТабЗнач.НоваяКолонка("ПодразделениеНаименование"); ТабЗнач.НоваяКолонка("НоменклатураКод"); ТабЗнач.НоваяКолонка("НомерПоКаталогу"); ТабЗнач.НоваяКолонка("НоменклатураНаименование"); ТабЗнач.НоваяКолонка("ЕдИзмКод"); ТабЗнач.НоваяКолонка("ЕдИзмНаименование"); ТабЗнач.НоваяКолонка("Количество"); ТабЗнач.НоваяКолонка("СуммаВсего"); ТабЗнач.НоваяКолонка("СтоимостьВал"); ТабЗнач.НоваяКолонка("Сумма"); ТабЗнач.НоваяКолонка("СуммаНДС"); ТаблицаЗначений = ВводОстатковТоваров(); Флаг = 0; ПодразделениеКодПред = ""; ТаблицаЗначений.ВыбратьСтроки(); Пока ТаблицаЗначений.ПолучитьСтроку() = 1 Цикл ПодразделениеКодТек = ТаблицаЗначений.ПодразделениеКод; Если ПодразделениеКодТек = ПодразделениеКодПред Тогда ТабЗнач.НоваяСтрока(); ТабЗнач.ПодразделениеКод = ТаблицаЗначений.ПодразделениеКод; ТабЗнач.ПодразделениеНаименование = ТаблицаЗначений.ПодразделениеНаименование; ТабЗнач.НоменклатураКод = ТаблицаЗначений.НоменклатураКод; ТабЗнач.НомерПоКаталогу = ТаблицаЗначений.НомерПоКаталогу; ТабЗнач.НоменклатураНаименование = ТаблицаЗначений.НоменклатураНаименование; ТабЗнач.ЕдИзмКод = ТаблицаЗначений.ЕдИзмКод; ТабЗнач.ЕдИзмНаименование = ТаблицаЗначений.ЕдИзмНаименование; ТабЗнач.Количество = ТаблицаЗначений.Количество; ТабЗнач.СуммаВсего = ТаблицаЗначений.СуммаВсего; ТабЗнач.СтоимостьВал = ТаблицаЗначений.СтоимостьВал; ТабЗнач.Сумма = ТаблицаЗначений.Сумма; ТабЗнач.СуммаНДС = ТаблицаЗначений.СуммаНДС; Флаг = 1; Иначе Если Флаг = 1 Тогда ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.Товары = ТабЗнач; ВыборкаДанных.СкладКомпании = ПодразделениеКодПред; ТабЗнач = СоздатьОбъект("ТаблицаЗначений"); ТабЗнач.НоваяКолонка("ПодразделениеКод"); ТабЗнач.НоваяКолонка("ПодразделениеНаименование"); ТабЗнач.НоваяКолонка("НоменклатураКод"); ТабЗнач.НоваяКолонка("НомерПоКаталогу"); ТабЗнач.НоваяКолонка("НоменклатураНаименование"); ТабЗнач.НоваяКолонка("ЕдИзмКод"); ТабЗнач.НоваяКолонка("ЕдИзмНаименование"); ТабЗнач.НоваяКолонка("Количество"); ТабЗнач.НоваяКолонка("СуммаВсего"); ТабЗнач.НоваяКолонка("СтоимостьВал"); ТабЗнач.НоваяКолонка("Сумма"); ТабЗнач.НоваяКолонка("СуммаНДС"); Иначе ТабЗнач.НоваяСтрока(); ТабЗнач.ПодразделениеКод = ТаблицаЗначений.ПодразделениеКод; ТабЗнач.ПодразделениеНаименование = ТаблицаЗначений.ПодразделениеНаименование; ТабЗнач.НоменклатураКод = ТаблицаЗначений.НоменклатураКод; ТабЗнач.НомерПоКаталогу = ТаблицаЗначений.НомерПоКаталогу; ТабЗнач.НоменклатураНаименование = ТаблицаЗначений.НоменклатураНаименование; ТабЗнач.ЕдИзмКод = ТаблицаЗначений.ЕдИзмКод; ТабЗнач.ЕдИзмНаименование = ТаблицаЗначений.ЕдИзмНаименование; ТабЗнач.Количество = ТаблицаЗначений.Количество; ТабЗнач.СуммаВсего = ТаблицаЗначений.СуммаВсего; ТабЗнач.СтоимостьВал = ТаблицаЗначений.СтоимостьВал; ТабЗнач.Сумма = ТаблицаЗначений.Сумма; ТабЗнач.СуммаНДС = ТаблицаЗначений.СуммаНДС; Флаг = 1; КонецЕсли; КонецЕсли; ПодразделениеКодПред = ПодразделениеКодТек; КонецЦикла; ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.Товары = ТабЗнач; ВыборкаДанных.СкладКомпании = ПодразделениеКодПред; //ТабЗнач.УдалитьСтроки(); | |||
| 29
    
        fisher 28.02.12✎ 15:49 | 
        Документов сколько создается?     | |||
| 30
    
        espanol 28.02.12✎ 15:51 | 
        (29) всего 1     | |||
| 31
    
        fisher 28.02.12✎ 16:36 | 
        (30) Тогда два варианта. Или твой код только одну строку в "ВыборкаДанных" пишет, или выгружается таки несколько доков, но загружаются в один и тот же.
  Для начала попробуем упростим код и посчитать количество выгружаемых доков. ВыборкаДанных = СоздатьОбъект("ТаблицаЗначений"); ВыборкаДанных.НоваяКолонка("Товары"); ВыборкаДанных.НоваяКолонка("СкладКомпании"); ТаблицаЗначений = ВводОстатковТоваров(); ПодразделениеКодТек = ""; ТаблицаЗначений.ВыбратьСтроки(); Пока ТаблицаЗначений.ПолучитьСтроку() = 1 Цикл Если ПодразделениеКодТек <> ТаблицаЗначений.ПодразделениеКод Тогда ПодразделениеКодТек = ТаблицаЗначений.ПодразделениеКод; ТабЗнач = СоздатьОбъект("ТаблицаЗначений"); ТабЗнач.НоваяКолонка("ПодразделениеКод"); ТабЗнач.НоваяКолонка("ПодразделениеНаименование"); ТабЗнач.НоваяКолонка("НоменклатураКод"); ТабЗнач.НоваяКолонка("НомерПоКаталогу"); ТабЗнач.НоваяКолонка("НоменклатураНаименование"); ТабЗнач.НоваяКолонка("ЕдИзмКод"); ТабЗнач.НоваяКолонка("ЕдИзмНаименование"); ТабЗнач.НоваяКолонка("Количество"); ТабЗнач.НоваяКолонка("СуммаВсего"); ТабЗнач.НоваяКолонка("СтоимостьВал"); ТабЗнач.НоваяКолонка("Сумма"); ТабЗнач.НоваяКолонка("СуммаНДС"); ВыборкаДанных.НоваяСтрока(); ВыборкаДанных.СкладКомпании = ПодразделениеКодТек; ВыборкаДанных.Товары = ТабЗнач; КонецЕсли; ТабЗнач.НоваяСтрока(); ТабЗнач.ПодразделениеКод = ТаблицаЗначений.ПодразделениеКод; ТабЗнач.ПодразделениеНаименование = ТаблицаЗначений.ПодразделениеНаименование; ТабЗнач.НоменклатураКод = ТаблицаЗначений.НоменклатураКод; ТабЗнач.НомерПоКаталогу = ТаблицаЗначений.НомерПоКаталогу; ТабЗнач.НоменклатураНаименование = ТаблицаЗначений.НоменклатураНаименование; ТабЗнач.ЕдИзмКод = ТаблицаЗначений.ЕдИзмКод; ТабЗнач.ЕдИзмНаименование = ТаблицаЗначений.ЕдИзмНаименование; ТабЗнач.Количество = ТаблицаЗначений.Количество; ТабЗнач.СуммаВсего = ТаблицаЗначений.СуммаВсего; ТабЗнач.СтоимостьВал = ТаблицаЗначений.СтоимостьВал; ТабЗнач.Сумма = ТаблицаЗначений.Сумма; ТабЗнач.СуммаНДС = ТаблицаЗначений.СуммаНДС; КонецЦикла; Сообщить(ВыборкаДанных.КоличествоСтрок()); | |||
| 32
    
        espanol 28.02.12✎ 16:56 | 
        Вывел таки вот так:
  Начало выгрузки: 28.02.12 16:54:33 3 Выгружено объектов: 253 Окончание выгрузки: 28.02.12 16:54:37 | |||
| 33
    
        espanol 28.02.12✎ 17:06 | 
        видимо всетаки он записывается в один документ....     | |||
| 34
    
        espanol 28.02.12✎ 17:07 | 
        но как и почему.... поиск делал и по номеру и по дате и по номеру и дате и вообще без поиска....     | |||
| 35
    
        fisher 28.02.12✎ 17:40 | 
        Так для начала номер и дату нужно выгрузить. Или ты хочешь меня неприятно поразить, и сказать что они у тебя в ПКО фиксированно задаются?     | |||
| 36
    
        fisher 28.02.12✎ 17:42 | 
        (35) + Дату можно фиксированно в ПКО прописать, а номер выгружай в ПВД. Добавь колонку для него. Формируй свой номер для каждого склада. А галки поиска поставь по дате и номеру.     | |||
| 37
    
        fisher 28.02.12✎ 17:45 | 
        (36) + Или вообще номер не задавать, чтобы он создавался автоматом при загрузке, а галки поиска по дате и складу.     | |||
| 38
    
        espanol 28.02.12✎ 17:53 | 
        (35) Канешна нет.
  (37) Так и делал. (36) Сделал, номер встал равный 0000000001, и тут я ниче уже не понял, почему в документ попадает последняя ТЗ, а номер первый.... что-то тут не то.... | |||
| 39
    
        espanol 28.02.12✎ 17:55 | 
        ааа, стоп, ТЗ тоже первая попадает!     | |||
| 40
    
        espanol 28.02.12✎ 17:55 | 
        а второе и третье значение будто растворились гдето     | |||
| 41
    
        fisher 28.02.12✎ 17:57 | 
        ТЗ должна последняя попадать. Потому что все три дока последовательно загружаются в один. Попробуй выгружать каждый со своим номером. Что-то ты там намудрил с настройками.     | |||
| 42
    
        espanol 28.02.12✎ 17:58 | 
        (41) всмысле? каждый со своим номером? я присвоил искуственно каждой строке свой номер, да.     | |||
| 43
    
        espanol 28.02.12✎ 18:01 | 
        настройки стандартные, поиск на номере и дате....
  я заметил такую вещь, если вот ТЗ в ПВД не обнулять то при выгрузке туда загружаются все товары из запроса, проверил, по остаткам все сходится, а если заного создавать ТЗ то получается то что полилось сейчас..... | |||
| 44
    
        fisher 28.02.12✎ 18:02 | 
        ВыборкаДанных.НоваяКолонка("Номер");
  .................. ВыборкаДанных.Номер = ПодразделениеКодТек; //например | |||
| 45
    
        espanol 28.02.12✎ 18:03 | 
        (44) да, так и сделал
  Начало выгрузки: 28.02.12 17:54:25 Номер 1 00000016 Номер 2 00000020 Номер 3 00000021 Выгружено объектов: 253 Окончание выгрузки: 28.02.12 17:54:30 | |||
| 46
    
        fisher 28.02.12✎ 18:22 | 
        И галки поиска стоят по номеру и дате?
  Тогда показывай скриншот со своим ПКО и своими ПКС. | |||
| 47
    
        fisher 28.02.12✎ 18:23 | 
        Ну и ПВД до кучи (концовку чтобы видно было).     | |||
| 48
    
        espanol 28.02.12✎ 18:24 | 
        УРа заработало!     | |||
| 49
    
        espanol 28.02.12✎ 18:25 | 
        (47) знаешь в чем было:
  Важно: Если для выборки данных ПВД используется произвольный алгоритм и в обработчике ПВД "Перед обработкой" инициируется параметр ВыборкаДанных, то для ПКО следует установить признак "Не запоминать выгруженные объекты". | |||
| 50
    
        espanol 28.02.12✎ 18:25 | 
        Большое спасибо что еще раз помог разобраться в это ужасе.... терь я понял как фигачить такое, буду дальше стараться!     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |