|
Вопрос по КД.Выгрузка только 100 элементов | ☑ | ||
---|---|---|---|---|
0
serg-lom89
17.06.16
✎
16:02
|
Добрый.
Вопрос по КД. Есть база источник(торговля) Есть база приемник(Самописка для тренировки )))); Обмениваюсь обработкой "Универсальный обмен через XML". так вот.Справочник один сильно большой и я хочу выгрузить только 100 элементов.И что бы руками не отбирать в обработке 100 элементов,как пытаюсь указать в событии ВПД указать выгрузку 100 объектов. вот написал какой то ТекстЗапроса = "ВЫБРАТЬ РАЗЛИЧНЫЕ ПЕРВЫЕ 100 | ЕдиницыИзмерения.Ссылка как ЕдиницыИзмерения |ИЗ | Справочник.ЕдиницыИзмерения КАК ЕдиницыИзмерения"; ТЗ = Новый ТаблицаЗначений(); ТЗ.Колонки.Добавить("ЕдиницыИзмерения"); Запрос = новый Запрос(ТекстЗапроса); Выборка = Запрос.Выполнить().Выбрать(); Если Выборка.Количество() = 0 Тогда Отказ = Истина; КонецЕсли; Пока Выборка.Следующий() Цикл СтрокаТЗ = ТЗ.Добавить(); СтрокаТЗ.ЕдиницыИзмерения = Выборка.ЕдиницыИзмерения; КонецЦикла; ИсходящиеДанные = Новый Структура; ВходящиеДанные = Новый Структура; СтруктураОтбора = Новый Структура; Для Каждого СтрокаТЗ Из ТЗ Цикл СтруктураОтбора.Вставить("ЕдиницыИзмерения",СтрокаТЗ.ЕдиницыИзмерения); ВыгрузитьПоПравилу(ИсходящиеДанные, ,ВходящиеДанные , , "ЕдиницыИзмерения"); КонецЦикла; Подскажите возможно ли такое?и в чем опишибка если не дает выгрузить |
|||
1
Карупян
17.06.16
✎
16:03
|
зачем через Входящие/Исходящие? Почему не Ссылки?
|
|||
2
serg-lom89
17.06.16
✎
16:08
|
(1) ну а вообще такое реально?
|
|||
3
serg-lom89
17.06.16
✎
16:08
|
всмысле по моему вопросу
|
|||
4
serg-lom89
17.06.16
✎
16:08
|
)
|
|||
5
Очевидно
17.06.16
✎
16:11
|
(2) Да , вполне реально ... тут другая загвоздка ... первые 100 должны выгрузится ... но для второй выгрузки тебе как-то нужно будет выбрать "Вторые 100" ... а как 1С узнает что они действительно "Вторые" ? как вариант можно попробовать сделать план обмена и по аналогии с механизмом "пост обработчиков обновления" - зарегестрировать справочник весь к обмену ... а потом в правиле выбрать "Первые 100" которые есть в этой регистрации к обмену ... после получения списка ссылок - удалять регистрацию ... выгрузка .. потом второй цикл 100 шт - получил ссылки , выгрузил , снял с регистрации ... и т.д.
|
|||
6
serg-lom89
17.06.16
✎
16:14
|
(5) ну это на данный момент не так актуаьно.хотя спасибо за идею.
пусть даже выбирать все тебе самые 100 но сортировка по коду,по наим..и т.д... |
|||
7
serg-lom89
17.06.16
✎
16:14
|
фантазии полет можно продолжать и дальше))
|
|||
8
Очевидно
17.06.16
✎
16:17
|
(6) и как при второй выгрузке понять на каком "коде" закончилась прошлая выгрузка ? ... или ты правила с запросом хочешь после каждого файла править ? ))
|
|||
9
antgrom
17.06.16
✎
16:18
|
Если используешь обработку "Универсальный обмен через XML" ,то почему сразу не установить : "Использовать транзакции" и "количество элементов в транзакции" ?
зачем кодить если ты используешь что то стандартное и там это уже реализовано ? |
|||
10
serg-lom89
17.06.16
✎
16:25
|
(9) дело не в том что реализованно,а в том что бы научиться,потому что только начинаю изучать КД.и всякие задачи могут возникнуть в рабоче
|
|||
11
serg-lom89
17.06.16
✎
16:27
|
вот и хочу разобраться.обратился сюда за помощью
|
|||
12
takefive
17.06.16
✎
16:30
|
пиши проще... тз не нужна
Пока Выборка.Следующий() Цикл ВыгрузитьПоПравилу(Выборка.ЕдиницыИзмерения); КонецЦикла; |
|||
13
Йохохо
17.06.16
✎
16:38
|
(0) выгрузить по правилу в пвд делать не надо. Так делают только чтобы выгрузить не основные данные, а косвенные. Чтобы не плодить ПВД, например. Для основной выборки надо заполнить предопределенную переменную, которая есть в справке
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |