|
1С:Предприятие
:: 1С:Предприятие 8 общая
|
|
| ||
AlexandrV 21.12.20 - 09:01 | Как в конвертации пр загрузке искать документ по номеру в периоде (7 месяцев)
Искать по дате нельзя - она разная у источника и базе приемнике Подскажите кто знает как сделать | ||
AlexandrV 1 - 21.12.20 - 09:05 | (1)+ писал загрузку выбора данных в обработке перед загрузкой данных
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| ЗаказПокупателя.Ссылка
|ИЗ
| Документ.ЗаказПокупателя КАК ЗаказПокупателя
|ГДЕ
| ЗаказПокупателя.Дата МЕЖДУ &Дата1 И &Дата2";
Запрос.УстановитьПараметр("Дата1", НачалоГода(ДатаНачала));
Запрос.УстановитьПараметр("Дата2", КонецГода(ДатаОкончания));
РезультатЗапроса = Запрос.Выполнить();
ВыборкаДанных = РезультатЗапроса.Выбрать();
Пока ВыборкаДанных.Следующий() Цикл
ВыгрузитьПоПравилу(ВыборкаДанных.Ссылка, , , , "ЗаказПокупателя");
КонецЦикла;
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| РасходнаяНакладная.Ссылка
|ИЗ
| Документ.РасходнаяНакладная КАК РасходнаяНакладная
|ГДЕ
| РасходнаяНакладная.Дата МЕЖДУ &Дата1 И &Дата2";
Запрос.УстановитьПараметр("Дата1", НачалоГода(ДатаНачала));
Запрос.УстановитьПараметр("Дата2", КонецГода(ДатаОкончания));
Но загружать не дает
Дает сбой | ||
breezee 2 - 21.12.20 - 09:08 | Ищите по ГУИДу) | ||
AlexandrV 3 - 21.12.20 - 09:08 | Подскажите обработку может не ту сделал или не туда поставил | ||
AlexandrV 4 - 21.12.20 - 09:16 | (2) ГУИД у документов в разных базах отличается | ||
AlexandrV 5 - 21.12.20 - 09:23 | (0)+ Если работать дальше, то я бы добавил поле дату создания дока и искал бы по нему, но перезаписывать несколько лет в рабочей базе нет смысла
В текущем моменте проще выбрать по периоду Подскажите кто знает | ||
Шурик71 6 - 21.12.20 - 09:26 | (0) Обработчик ПоляПоиска.
---- СсылкаНаОбъект - ссылка на результирующий объект. Если в обработчике установить данную ссылку (не пустую) то программа ее запомнит и поиск на этом будет считать успешно завершенным ---- | ||
AlexandrV 7 - 21.12.20 - 09:44 | (6) СсылкаНаОбъект = Документы.РасходнаяНакладная.НайтиПоНомеру(СвойстваПоиска["Код"], ДатаНачала);
Будет работать. если поставлю в обработчик поля поска? | ||
d4rkmesa 8 - 21.12.20 - 10:11 | "Пилите [код] Шура, пилите". Не получается отладить в приемнике - делайте тестовую обработку, делающую почти то же, что и обработчик ПоляПоиска, в приемнике. | ||
mikecool 9 - 21.12.20 - 10:19 | запрос + кеш | ||
d4rkmesa 10 - 21.12.20 - 10:27 | (7) По идее, работать должно, но стандартный алгоритм так же работает, если поиск по номеру-дате, т.е. дата используется только для уточнения периода документа, если не стоит галочка "поиск по дате на равенство" в ПКС Дата->Дата. | ||
AlexandrV 11 - 21.12.20 - 10:37 | (10) не нашел, а даты я не знаю той которая будет в базе приемнике | ||
AlexandrV 12 - 21.12.20 - 10:39 | (11)+ в базе приемнике я знаю номер дока и период в котором документ будет | ||
Aleksey 13 - 21.12.20 - 10:49 | (12) Что значит период? А если не нашел то какой датой он должен создаться?
P.Sю Запросом в обработчике поля поиска ищи | ||
AlexandrV 14 - 21.12.20 - 11:25 | (13) прилетает более свежий и у него дата уже последняя, но главное документ найти, а потом и дату исправим | ||
hhhh 15 - 21.12.20 - 11:32 | |||
AlexandrV 16 - 21.12.20 - 11:40 | (15) искать по номеру и дате не могу, потому что дата не совпадает, а не задав период, захватывает и док с номером 2-х летней давности | ||
AlexandrV 17 - 21.12.20 - 11:42 | (15) если галочку на равенство дат не ставлю все равно не находит док | ||
Aleksey 18 - 21.12.20 - 11:53 | (14) Я как бы про новые документы спрашивал, а не поиск старого | ||
Aleksey 19 - 21.12.20 - 11:55 | (16) Там же на уровне платформы нечеткий поиск по дате, а зависит от периода нумерации | ||
Йохохо 20 - 21.12.20 - 11:58 | (16) запрос .... где номер = &номер и дата больше &ТекДата
запрос.установитьпараметр("ТекДата", ДобавитьМесяц(ТекущаяДата(), -7)) | ||
zippygrill 21 - 21.12.20 - 12:17 | В событие ПоляПоиска для твоего ПКО впиши свой код поиска | ||
AlexandrV 22 - 21.12.20 - 12:26 | (21) пишу код СсылкаНаОбъект = Документы.РасходнаяНакладная.НайтиПоНомеру(СвойстваПоиска["Номер"], ДатаНачала); и документ не находится , хотя в описании процедуры "НайтиПоНомеру" второй параметр дата из периода | ||
Aleksey 23 - 21.12.20 - 12:29 | (22) Нумерация документа какая? Какая дата стоит? Что с разрядностью номера | ||
zippygrill 24 - 21.12.20 - 12:35 | (22) на отладку тогда садись и смотри что в СсылкаНаОбъект будет
про ПрерватьПоиск не забудь ставить есть значениезаполнено(СсылкаНаОбъект) | ||
AlexandrV 25 - 21.12.20 - 13:26 | (24) При режиме отладки все отлично, а при запуске загрузки выдает ошибку
Получается в режиме сервера и толстого клиента работает, а в тонком клиенте (универсальная обработка) сбой дает Подскажите как избежать | ||
zippygrill 26 - 21.12.20 - 15:33 | (25) не верю | ||
zippygrill 27 - 21.12.20 - 15:34 | (22) дату окончания поиска тоже задай | ||
AlexandrV 28 - 21.12.20 - 16:10 | (27) НайтиПоНомеру имеет 2 реквизита номер и дату | ||
Шурик71 29 - 21.12.20 - 17:11 | (28) Тебе не надо НайтиПоНомеру.
Тебе надо запрос. Запрос.Текст = "Выбрать первые 1 ссылка из документ.РасходнаяНакладная Где не пометкаудаления И Номер = &Номер и Дата Между &НачалоИнтервала и &КонецИнтервала"; ... Выборка = Запрос.Выполнить().Выбрать();
Если Выборка.Следующий() тогда
СсылкаНаОбъект = Выборка.Ссылка;
Иначе
ПрекратитьПоиск = Истина;
КонецЕсли; | ||
AlexandrV 30 - 21.12.20 - 17:35 | (29) запрос ставить в функции поиска объекта? Рекламное место пустует | ||
Aleksey 31 - 21.12.20 - 17:46 | (29) Зачем ПрекратитьПоиск вносить в условие, если он должен быть за условием | ||
mikecool 32 - 21.12.20 - 18:03 | в условии задачи - нечеткие условия поиска в результате будут нечеткие результаты ))) | ||
Шурик71 33 - 21.12.20 - 18:33 | |||
AlexandrV 34 - 24.12.20 - 08:57 | Спасибо
все было просто, этот документ имел запрет на запись и мне повезло с ним |
|
Список тем форума |