Выборка документов - Каминсофт

Выборка документов

31 мая 2013 08:18 #1
от Карпов Антон Сергеевич
Делаю такую выборку:
рк_ВсеВыплаты.Очистить();
ДокВыплаты = Документы.Выплата.Выбрать(ДатаНач, ДатаКон);
Пока ДокВыплаты.Следующий() Цикл
   л_Док = ДокВыплаты.ПолучитьОбъект();
   рк_ВсеВыплаты.Добавить(л_Док);
КонецЦикла;
Почему в списке рк_ВсеВыплаты в итоге отсутствуют все выплаты за дату, которая ДатаКон?
Тема закрыта.

31 мая 2013 13:23 #2
от Андрей Ланьшин

Делаю такую выборку:

рк_ВсеВыплаты.Очистить();
ДокВыплаты = Документы.Выплата.Выбрать(ДатаНач, ДатаКон);
Пока ДокВыплаты.Следующий() Цикл
   л_Док = ДокВыплаты.ПолучитьОбъект();
   рк_ВсеВыплаты.Добавить(л_Док);
КонецЦикла;
Почему в списке рк_ВсеВыплаты в итоге отсутствуют все выплаты за дату, которая ДатаКон?


Вопрос не по программе, а по принципам программирования в 1С:Предприятие 8, тем не менее, постараюсь ответить.
1. рк_ВсеВыплаты - это что? Какой тип данных у переменной?
2. Подозреваю что здесь ошибка:
л_Док = ДокВыплаты.ПолучитьОбъект(); - метод ПолучитьОбъект() используется для модификации записи.
рк_ВсеВыплаты.Добавить(л_Док);
Скорее всего должно быть так (допустим, что рк_ВсеВыплаты - таблица значений и в ней есть колонка Документ):
НовСтрока = рк_ВсеВыплаты.Добавить();
НовСтрока.Документ = ДокВыплаты.Ссылка;

Ланьшин Андрей, фирма КАМИН
Правильно заданный вопрос содержит половину ответа!
Тема закрыта.

31 мая 2013 13:35 #3
от Карпов Антон Сергеевич

Вопрос не по программе, а по принципам программирования в 1С:Предприятие 8, тем не менее, постараюсь ответить.
1. рк_ВсеВыплаты - это что? Какой тип данных у переменной?
2. Подозреваю что здесь ошибка:
л_Док = ДокВыплаты.ПолучитьОбъект(); - метод ПолучитьОбъект() используется для модификации записи.
рк_ВсеВыплаты.Добавить(л_Док);
Скорее всего должно быть так (допустим, что рк_ВсеВыплаты - таблица значений и в ней есть колонка Документ):
НовСтрока = рк_ВсеВыплаты.Добавить();
НовСтрока.Документ = ДокВыплаты.Ссылка;

рк_ВсеВыплаты - это список значений. Метод ПолучитьОбъект() возвращает в данном случае объект типа ДокументОбъект и ни для каких модификаций использоваться не может.
Тема закрыта.

31 мая 2013 13:47 #4
от Андрей Ланьшин
Тогда так: ДокВыплаты = Документы.Выплата.Выбрать(ДатаНач, КонецДня(ДатаКон))
Но все равно не понятно для чего получается тип ДокументОбъект если не предполагается его модификация? Для этого как раз и используют объект типа ДокументСсылка.

Ланьшин Андрей, фирма КАМИН
Правильно заданный вопрос содержит половину ответа!
Тема закрыта.
Спасибо сказали: Карпов Антон Сергеевич
31 мая 2013 14:09 #5
от Карпов Антон Сергеевич

Тогда так: ДокВыплаты = Документы.Выплата.Выбрать(ДатаНач, КонецДня(ДатаКон))
Но все равно не понятно для чего получается тип ДокументОбъект если не предполагается его модификация? Для этого как раз и используют объект типа ДокументСсылка.


Спасибо. Буду знать. Переделаю на ссылку. Мне это нужно чтобы просто заполнить список выплат. Далее они будут по одному переноситься пользователем в таблицу значений. Из таблицы значений они будут перебираться и из табличной части каждого из них будут выгружаться необходимые данные в файл dbf.

Это, кстати, выгрузка выплат для Сбербанка.
Тема закрыта.

31 мая 2013 14:51 #6
от Андрей Ланьшин
А чем стандартная выгрузка через xml не подходит?

Ланьшин Андрей, фирма КАМИН
Правильно заданный вопрос содержит половину ответа!
Тема закрыта.

31 мая 2013 15:00 #7
от Карпов Антон Сергеевич

А чем стандартная выгрузка через xml не подходит?

Вот такие требования в нашем отделении выдвинули. Видимо им лень новое ПО для приема xml настраивать. Мне-то их заморочки не понятны, сказали делать в dbf, я сделал. Только ее еще дорабатывать надо.
Тема закрыта.

Модераторы: ShundrinНаталья Иванова ГК КАМИНRomen

Опрос
Всего 3 простых вопроса

Продолжая использовать наш сайт, вы даете согласие на обработку файлов cookie и пользовательских данных в целях функционирования сайта, проведения ретаргетинга и статистических исследований, обзоров. Если вы не хотите, чтобы ваши данные обрабатывались, покиньте сайт.

Принять