Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Написал такую вот процедуру Процедура КнопкаВыполнитьНажатие(Кнопка) НачатьТранзакцию(); Док = ДОкументы.ЗаявкаНаКассовыйРасход; Выборка = ПолеВвода1; //Док.Выбрать(); ТекДок = Выборка.Ссылка.ПолучитьОбъект(); Если Лев(ТекДок.ЛицевойСчет.Код,2)="14" Тогда ТекДок.Баланс = Справочники.Баланс.НайтиПоНаименованию("123"); ТекДок.Записать(РежимЗаписиДокумента.Запись); Сообщить("документ "+ текДок.номер+" записан"); ЗафиксироватьТранзакцию(); КонецЕсли; КонецПроцедуры Здесь конкретный документ в базе 1С выбирается вручную через поле выбора, ссылка на него заносится в переменную ТекДок. При этом тип документа (в данном случае Заявка на кассовый расход) выбирается заранее. Подскажите как написать цикл, который подавал бы в переменную ТекДок последовательно ссылки на ВСЕ документы, которые есть в базе, независимо от их типа. П.С. прошу сильно не пинать, ибо первый опыт программирования на 1С ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 15:44 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Забыл добавить, если это имеет значение, то платформа - 1С:Предприятие 8.2 (8.2.15.294), конфига - БГУ 1.0.9.2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 15:46 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
ВыборкаДокументов = Документы.Расходная.Выбрать(НачалоГода(ТекущаяДата()), КонецГода(ТекущаяДата())); Пока ВыборкаДокументов.Следующий() Цикл // Действия с документом - элементом выборки, // его значение содержится в переменной ВыборкаДокументов КонецЦикла ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 16:03 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Запрос = Новый Запрос; ФлагПервыйВход = Истина; Запрос.Текст = "ВЫБРАТЬ ВложенныйЗапрос.Ссылка ИЗ ("; Для каждого Док из Метаданные.Документы Цикл Если НЕ ФлагПервыйВход Тогда Запрос.Текст = Запрос.Текст + " ОБЪЕДИНИТЬ ВСЕ "; КонецЕСли; ФлагПервыйВход = Ложь; Запрос.Текст = Запрос.Текст + " ВЫБРАТЬ Ссылка ИЗ Документ." + Док.Имя + " ГДЕ НачалоПериода(Дата, ДЕНЬ) = &Дата "; КонецЦикла; Запрос.Текст = Запрос.Текст + ") КАК ВложенныйЗапрос УПОРЯДОЧИТЬ ПО ВложенныйЗапрос.Ссылка.Дата"; Запрос.УстановитьПараметр("Дата", НачалоДня(ТекущаяДата())); РезультатЗапроса = Запрос.Выполнить(); Выборка = РезультатЗапроса.Выбрать(); Пока Выборка.Следующий() Цикл ДокСсылка = Выборка.Ссылка; КонецЦикла; ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 16:17 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Спасибо за оперативную помощь. А как все таки можно сделать цикл вообще по всем типам документов, а не только по расходным? И чтобы соответственно не приходилось явно указывать тип документа? Грубо говоря, чтобы было не Документы.Расходная.Выбрать, а что-то типа Документы.ВсеТипыДокументов.Выбрать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 16:18 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Программист 1с, спасибо, сейчас попробую ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 16:19 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Программист 1с, подскажите как должен работать приведенный вами код? У меня обламывается на Выборка = РезультатЗапроса.Выбрать(); Предыдущая строка РезультатЗапроса = Запрос.Выполнить(); как я понимаю дает коллекцию всех возможных типов документов. А РезультатЗапроса.Выбрать() дает "Поле объекта не обнаружено" Скрины отладчика прицепил. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 17:55 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Как посмотреть содержимое ТЗ в отладчике знаете? Привидите Скриншот с отладчика со строки РезультатЗапроса.Выгрузить() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 17:59 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
AHDP, Имеете в виду РезультатЗапроса.Выбрать();? Вот скрин ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 18:22 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
РезультатЗапроса.выгрузить() ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 18:28 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
В строку Выражение вставляете РезультатЗапроса.выгрузить(). В окне результатов встаете на строчку и жмёте на карандаш. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 18:34 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Как я понял вместо Выборка = РезультатЗапроса.Выбрать() должно быть Выборка = РезультатЗапроса.Выгрузить()? Скрин прикладываю Поледние строки закоментил, т.к. если Выбрать() заменить на Выгрузить(), не находит после .Следующий в строке Пока Выборка.Следующий Цикл ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 18:46 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
Понял, почему пусто в результатах. За сегодняшнюю дату документов в базе нет. Поменял на Запрос.УстановитьПараметр("Дата", НачалоГода(ТекущаяДата())); Но тогда выдает только доки на 01.01.2012 А как задать интервал с 01.01.2012 по сегодняшний день? И еще Пока Выборка.Следующий Цикл ругается, что поле Следующий не обнаружено ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 19:02 |
|
||
|
Помогите написать цикл для получения всех документов в базе 1с
|
|||
|---|---|---|---|
|
#18+
арт2010Понял, почему пусто в результатах. За сегодняшнюю дату документов в базе нет. Поменял на Запрос.УстановитьПараметр("Дата", НачалоГода(ТекущаяДата())); Но тогда выдает только доки на 01.01.2012 А как задать интервал с 01.01.2012 по сегодняшний день? В запросе заменить условие Код: vbnet 1. , На два условия объединенных И больше равно начальной дате и меньше либо равно конечной дате. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.03.2012, 21:10 |
|
||
|
|

start [/forum/topic.php?fid=28&fpage=63&tid=1520591]: |
0ms |
get settings: |
9ms |
get forum list: |
20ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 209ms |
| total: | 356ms |

| 0 / 0 |
