Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[1С:Предприятие 7.7]

Прямые запросы к БД. Получить колонку с датой документа

Natalia111
читатель
офлайн
Дата регистрации: 04.07.2011
Сообщений: 52
Пост №1
 
18.09.2011 19:19

"Таким образом я получаю список проданных товаров из регистра по заданной фирме и датам, ТЕПЕРЬ нужно добавитьв выходную таблицу ещё и колонку с датой продажи товара. Подскажите, пожалуйста, как это сделать, может быть можно каким-то образом получить ссылку на документ основание и потом уже из него - дату? Спасибо.<br><pre><br><br>мКоманда = СоздатьОбъект("ODBCRecordset");<br>мКоманда.УстБД1С(); <br>мКоманда.УстановитьТекстовыйПараметр("НачДата", НачДата); <br>мКоманда.УстановитьТекстовыйПараметр("КонДата", КонДата); <br>мКоманда.УложитьСписокОбъектов(Ном, "#Группа", "Номенклатура"); <br> <br>ТекстЗапроса="SELECT <br>| Рег.Номенклатура as [Номенклатура $Справочник.Номенклатура] <br>| ,Рег.Покупатель [Контра $Справочник.Контрагенты] <br>| ,Рег.ПродСтоимостьОБОРОТ as ПродСтоимость <br>| ,SUM(Рег.КоличествоОБОРОТ) as КолвоСумма <br>|FROM $РегистрОбороты.Продажи(:НачДата,:КонДата~,Месяц,,((Номенклатура in (SELECT Val FROM #Группа)))) Рег<br>|GROUP BY Рег.Номенклатура, Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ <br>|ORDER BY Рег.Номенклатура,Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ <br>|"; <br><br><br>КонецЕсли; Рез = мКоманда.Открыть(ТекстЗапроса); <br>ТЗ = СоздатьОбъект("ТаблицаЗначений"); //получаем результаты <br>мКоманда.ПолучитьРезультатыВ_ТЗ(ТЗ,1); мКоманда.Закрыть(); <br>ТЗ.Сортировать("Номенклатура"); <br><br> </pre>"

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №2
 
20.09.2011 10:46

А что это за интересный такой объект "ODBCRecordset"?

Natalia111
читатель
офлайн
Дата регистрации: 04.07.2011
Сообщений: 52
Пост №3
 
20.09.2011 13:07

Это-встроенные тип внешней компоненты 1С++ я ещё очень плохо во всём это разобралась, если интересно, кидаю небольшую статью на эту тему

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №4
 
20.09.2011 13:34

У Вас в описании на стр. 13 написано как получить документ.

Natalia111
читатель
офлайн
Дата регистрации: 04.07.2011
Сообщений: 52
Пост №5
 
20.09.2011 13:46

да, уже нашла, спасибо :)

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №6
 
20.09.2011 14:22

Вот с получением даты сложнее. Ее можно получить либо из таблицы остатков (в вашем описании есть раздел "Виртуальные таблицы"), но тогда не будет информации о документе, либо полученное поле IDDOC делать соединение с таблицей документов (не смотрел, есть ли там где примеры соединения двух таблиц-источников данных).

Natalia111
читатель
офлайн
Дата регистрации: 04.07.2011
Сообщений: 52
Пост №7
 
20.09.2011 14:48

"сделала так, дату выводит и номер док-та, но не в читаемом формате ))<br> <br><br><pre> ТекстЗапроса="SELECT<br>       | Рег.Номенклатура as [Номенклатура $Справочник.Номенклатура] <br>       | ,Рег.Покупатель [Контра $Справочник.Контрагенты]<br>       | ,Рег.ПродСтоимостьОБОРОТ as ПродСтоимость<br>       | ,SUM(Рег.КоличествоОБОРОТ) as КолвоСумма <br>       | ,Рег.ПозицияДокумента Поз<br>       |FROM $РегистрОбороты.Продажи(:НачДата,:КонДата~,Документ,,((Номенклатура in (SELECT Val FROM #Группа)))) Рег<br>       |GROUP BY Рег.Номенклатура, Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ, Рег.ПозицияДокумента <br>       |ORDER BY Рег.Номенклатура,Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ, Рег.ПозицияДокумента<br>       |"; </pre><br> Вместо Рег.ПозицияДокумента Поз подставляла ,CAST(LEFT(Рег.ПозицияДокумента, 8) as DateTime) as Поз, не получилось, думаю ... :))))))"

Natalia111
читатель
офлайн
Дата регистрации: 04.07.2011
Сообщений: 52
Пост №8
 
20.09.2011 14:58

"всё, заработало )))<br> <br><br><pre> ТекстЗапроса="SELECT<br>       | Рег.Номенклатура as [Номенклатура $Справочник.Номенклатура] <br>       | ,Рег.Покупатель [Контра $Справочник.Контрагенты]<br>       | ,Рег.ПродСтоимостьОБОРОТ as ПродСтоимость<br>       | ,SUM(Рег.КоличествоОБОРОТ) as КолвоСумма <br>       | ,CAST(LEFT(Рег.ПозицияДокумента, 8) as DateTime) as Поз<br>       |FROM $РегистрОбороты.Продажи(:НачДата,:КонДата~,Документ,,((Номенклатура in (SELECT Val FROM #Группа)))) Рег<br>       |GROUP BY Рег.Номенклатура, Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ, Рег.ПозицияДокумента <br>       |ORDER BY Рег.Номенклатура,Рег.Покупатель,Рег.ПродСтоимостьОБОРОТ, Рег.ПозицияДокумента<br>       |"; <br>       </pre>"

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №9
 
20.09.2011 15:22

Можно только порадоваться за Вас.<br> <br>P.S. Также рад, что в 8-ке все эти "танцы с бубном" уже не актуальны... :)

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация