|
Как перебрать все документы без вида? | ☑ | ||
---|---|---|---|---|
0
Elf56
18.04.14
✎
10:10
|
Вобщем нужно выбрать все документы за период какие есть в базе.
Но не определеного типа например ЗаказКлиента а вобще всех. В 7.7 это делается легко Док = СоздатьОбъект("Документ"); ДОк.Выбрать(ДатаНач, ДатаКон); Примерно так выбирает вобще все документа а как это сделать на 1с 8.2? потому как на ВыборкаДокументов = Документы.Выбрать(ДатаНачала,ДатаКонца); Пока ВыборкаДокументов.Следующий() Цикл выдает ошибку Всем заранее спасибо |
|||
1
ДенисЧ
18.04.14
✎
10:10
|
Через метаданные
|
|||
2
Wobland
18.04.14
✎
10:11
|
собрать запрос по кускам, выполнить, выбрать. а на зачем?
|
|||
3
ptiz
18.04.14
✎
10:11
|
Зачем?
|
|||
4
Wobland
18.04.14
✎
10:11
|
клюшки головного мозга ©
|
|||
5
Elf56
18.04.14
✎
10:13
|
(1) это как ?
|
|||
6
FIXXXL
18.04.14
✎
10:20
|
(4) не ругайся, бывает нужно
если одноразово: цикл по Мета.Доки и запрос с переменной, которая имя дока |
|||
7
DexterMorgan
18.04.14
✎
10:22
|
(6) текст запроса формируй в цикле обхода по метаданным
|
|||
8
Рэйв
18.04.14
✎
10:25
|
Для Каждого Мен Из Документы Цикл
Имя=Мен.Пустаяссылка().Метаданные().Имя; Запрос=Новый Запрос("Выбрать Док.ссылка Из Документ."+Имя+" КАК Док") тРез=Запрос.Выполнить().Выгрузить(); Для Каждого Стр Из тРез Цикл Сообщить(Стр.Ссылка); Конеццикла; КонецЦикла; |
|||
9
Elf56
18.04.14
✎
10:30
|
Сделал немного по другому
Для К = 0 По Метаданные.Документы.Количество() - 1 Цикл Документ = Метаданные.Документы.Получить(К); Имя = Документ.Имя; ВыборкаДок = Документы[Имя].Выбрать(ДатаНачала,ДатаКонца); // дальше обход выборки и удаление Пока ВыборкаДок.Следующий() Цикл Сообщить(ВыборкаДок.Ссылка); КонецЦикла; КонецЦикла; Но только теперь другой вопрос как выбрать документы по определенному реквизиту? т.е. скажем нужно чтобы выбрались только те документы в которых есть реквизит организация и где этот реквизит равен определенному значению? |
|||
10
Рэйв
18.04.14
✎
10:30
|
(9)Запросом
|
|||
11
v4442
18.04.14
✎
10:32
|
код от Чистова
Запрос = Новый Запрос; ФлагПервыйВход = Истина; Запрос.Текст = "ВЫБРАТЬ ВложенныйЗапрос.Ссылка ИЗ ("; Для каждого Док из Метаданные.Документы Цикл Если НЕ ФлагПервыйВход Тогда Запрос.Текст = Запрос.Текст + " ОБЪЕДИНИТЬ ВСЕ "; КонецЕСли; ФлагПервыйВход = Ложь; Запрос.Текст = Запрос.Текст + " ВЫБРАТЬ Ссылка ИЗ Документ." + Док.Имя + " ГДЕ Дата МЕЖДУ &НачДата и &КонДата "; КонецЦикла; Запрос.Текст = Запрос.Текст + ") КАК ВложенныйЗапрос УПОРЯДОЧИТЬ ПО ВложенныйЗапрос.Ссылка.Дата"; Запрос.УстановитьПараметр("НачДата", НачалоДня(ДатаНачалаБП1)); Запрос.УстановитьПараметр("КонДата", КонецДня(ДатаОкончанияБП1)); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл КонецЦикла; |
|||
12
John83
18.04.14
✎
10:32
|
(9) воистину семерочник :)
|
|||
13
Elf56
18.04.14
✎
10:35
|
Это то все сделал а по поводу последнего моего вопроса где выбрать все только если там есть определенный реквизит? с определенным значением?
|
|||
14
Elf56
18.04.14
✎
10:37
|
Пробую вот так
МетаданныеДокумента = Документы[Имя].Метаданные(); ИмяРеквизита = "Организация"; Если МетаданныеДокумента.Реквизиты.Найти(ИмяРеквизита) = Неопределено Тогда Продолжить; КонецЕсли; ошибку выдает |
|||
15
v4442
18.04.14
✎
10:37
|
(12) воистину пятёрочник, покажи мастер класс
|
|||
16
Рэйв
18.04.14
✎
10:38
|
(15)Тоже семерочник?:-) За державу обидно?
|
|||
17
Рэйв
18.04.14
✎
10:39
|
(14) текст ошибки из астрала брать?
|
|||
18
Господин ПЖ
18.04.14
✎
10:40
|
(14) щас окажется что это в тонком клиенте поиски ведутся...
но тогда бы и Запрос сломался бы |
|||
19
Рэйв
18.04.14
✎
10:41
|
(18)Скорее всего его Документы[Имя].Метаданные()
шлет лесом,т.к. оно вроде как только от ссылки работает |
|||
20
Wobland
18.04.14
✎
10:51
|
искать другое решение задачи вместо этого шизанутого ещё не предлагали?
|
|||
21
Elf56
18.04.14
✎
11:06
|
Вот ошибка
{Форма.Форма.Форма(34)}: Метод объекта не обнаружен (Метаданные) МетаданныеДокумента = Документы[Имя].Метаданные(); |
|||
22
Elf56
18.04.14
✎
11:06
|
(20) А как сделать? чтобы он выбрал все документы где есть реквизит Организация?
|
|||
23
Wobland
18.04.14
✎
11:11
|
(22) другим образом
|
|||
24
Господин ПЖ
18.04.14
✎
11:15
|
(21) в СП не смотришь из принципа? давно у менеджера документов метод Метаданные() появился?
|
|||
25
Elf56
18.04.14
✎
11:17
|
(24) СП это что такое ?
|
|||
26
Maxus43
18.04.14
✎
11:17
|
МетаданныеДокумента = Документы[Имя].ПустаяСсылка().Метаданные();
|
|||
27
Wobland
18.04.14
✎
11:17
|
продам СП. пятничные скидки
|
|||
28
Maxus43
18.04.14
✎
11:17
|
а лучще
Метаданные.Документы.найти(Имя) |
|||
29
Elf56
18.04.14
✎
11:22
|
(26) определяет пустой ли документ ссылка ? или что не пойму
|
|||
30
Wobland
18.04.14
✎
11:22
|
(29) как насчёт почитать об этом?
|
|||
31
Господин ПЖ
18.04.14
✎
11:23
|
(30) это не наш метод...
ну и уг этот снеговик |
|||
32
Elf56
18.04.14
✎
11:23
|
(30) где?
|
|||
33
scanduta
18.04.14
✎
11:23
|
(0) Мой вариант. Но работает только с небольшой доработкой конфы. Создаем новый журнал документов. В него Включаем все документы. А потом вытягиваем запросом все что нужно
|
|||
34
scanduta
18.04.14
✎
11:24
|
Уже из журнала
|
|||
35
kumena
18.04.14
✎
11:25
|
(11) на упп не будет работать, там больше 256 документов
>> В него Включаем все документы ахх..ть |
|||
36
Wobland
18.04.14
✎
11:25
|
(32) ктрл+ф1. с тебя 500 рублей
|
|||
37
Maxus43
18.04.14
✎
11:25
|
ЕстьОрганизациия = Документы[Имя].ПустаяСсылка().Метаданные().Реквизиты.найти("Организация") <> Неопределено;
|
|||
38
FIXXXL
18.04.14
✎
11:46
|
(9) конфа какая?
в стандартных есть функции типа ....Реквизит... и ...РеквизитТабличнойЧасти... |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |