Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
13 Дек 2017, 18:13
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Помогите с выгрузкой данных  (Прочитано 1879 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн gbs

  • *
  • Сообщений: 2
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-11-27
  • Сайт: 
Стоит задача выбрать и выгрузить данные из регистра  накопления и записать в .dbf, проблема в следующем при  получении данных запроса и записи строк .dbf таблица выходит в следующем виде:
LS                    USL                    JBO   TBO   JBONP   DATAN           DATAK
л/с №0001   Вывоз ТБО   0,00   2,00   0,00           01.10.2013   31.10.2013
л/с №0001   Вывоз ЖБО     0,00   0,00   3,00           01.10.2013   31.10.2013
л/с №0002   Вывоз ТБО   0,00   6,00   0,00           01.10.2013   31.10.2013
л/с №0009   Вывоз ТБО   0,00   2,00   0,00           01.10.2013   31.10.2013

Нужно вот так:
LS                    USL                    JBO   TBO   JBONP   DATAN           DATAK
л/с №0001   Вывоз ТБО   0,00   2,00   3,00           01.10.2013   31.10.2013
л/с №0002   Вывоз ТБО   0,00   6,00   0,00           01.10.2013   31.10.2013
л/с №0009   Вывоз ТБО   0,00   2,00   0,00           01.10.2013   31.10.2013


Оффлайн wise

  • ****
  • Сообщений: 428
  • РЕПУТАЦИЯ: 58
  • КПД: 14%
  • Кто сгорел, того не подожжешь
  • Регистрация: 2013-03-21
  • Сайт: 
  • Профессия: Ученик 1С
если БЕЗ разницы, что писать в поле "USL", то группируй в запросе по "LS, DATAN, DATAK" и суммируй "JBO, TBO"
p.s. у тебя и NIK как поля таблицы ;-)
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают

Оффлайн gbs

  • *
  • Сообщений: 2
  • РЕПУТАЦИЯ: 0
  • Регистрация: 2013-11-27
  • Сайт: 
если БЕЗ разницы, что писать в поле "USL", то группируй в запросе по "LS, DATAN, DATAK" и суммируй "JBO, TBO"
p.s. у тебя и NIK как поля таблицы ;-)

Поле "USL" действительно не обязательное, но проблема не в этом, значение полей "JBO, TBO, JBONP" это  количественное значение услуги, результат получаем во время цикла, как их обеденить строки выборки?
                   |   УПЖКХ_Начисления.ЛицевойСчет КАК ЛицевойСчет,
              |   УПЖКХ_Начисления.СуммаНачисления,
              |   УПЖКХ_Начисления.ДнейНачислено,
              |   УПЖКХ_Начисления.Период,
              |   УПЖКХ_Начисления.МесяцНачисления,
              |   УПЖКХ_Начисления.Услуга КАК усл,
              |   УПЖКХ_Начисления.Тариф,
              |   УПЖКХ_Начисления.Количество КАК кол,
              |   КВП_ЛицевыеСчета.Ссылка КАК л
              |ИЗ
              |   РегистрНакопления.УПЖКХ_Начисления КАК УПЖКХ_Начисления
              |      ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КВП_ЛицевыеСчета КАК КВП_ЛицевыеСчета
              |      ПО УПЖКХ_Начисления.ЛицевойСчет = КВП_ЛицевыеСчета.Ссылка
              |ГДЕ
              |   УПЖКХ_Начисления.Период МЕЖДУ &начдата И &кондата
              |   И УПЖКХ_Начисления.Количество <> 0
              |
              |СГРУППИРОВАТЬ ПО
              |   КВП_ЛицевыеСчета.Ссылка,
              |   УПЖКХ_Начисления.ЛицевойСчет,
              |   УПЖКХ_Начисления.СуммаНачисления,
              |   УПЖКХ_Начисления.ДнейНачислено,
              |   УПЖКХ_Начисления.Период,
              |   УПЖКХ_Начисления.МесяцНачисления,
              |   УПЖКХ_Начисления.Услуга,
              |   УПЖКХ_Начисления.Тариф,
              |   УПЖКХ_Начисления.Количество
              |
              |УПОРЯДОЧИТЬ ПО
              |   л
              |АВТОУПОРЯДОЧИВАНИЕ";
            //|ИТОГИ ПО
              //|   л"
            Запрос.УстановитьПараметр("КонДата", КонДата);
   Запрос.УстановитьПараметр("НачДата", НачДата);

   Результат = Запрос.Выполнить();
    СпособВыборки = ОбходРезультатаЗапроса.ПоГруппировкам;

   ВыборкаДетальныеЗаписи = Результат.Выбрать(СпособВыборки);
     
   Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
      
                 спр1 = справочники.КВП_Услуги.НайтиПоКоду("000007");
        спр = справочники.КВП_Услуги.НайтиПоКоду("000013");
      спр2 = справочники.КВП_Услуги.НайтиПоКоду("000011");
                 
    Выборка = ВыборкаДетальныеЗаписи;
               
      k = выборка.кол;
        услуга = выборка.усл; 
       ДБФ.Добавить();
         
      ДБФ.УстановитьЗначениеПоля("ls",сокрЛП(выборка.л));
        ДБФ.УстановитьЗначениеПоля("kol",сокрЛП(Выборка.кол));
        ДБФ.УстановитьЗначениеПоля("usl",сокрЛП(Выборка.усл));
        если услуга = спр тогда
          усл1 = услуга;
         сообщить ("ТБО"+" , " + усл1);
         к1 = выборка.кол;
         усл2 = к1;
            ДБФ.УстановитьЗначениеПоля("TBO",сокрЛП(усл2));
         иначе      ДБФ.УстановитьЗначениеПоля("TBO",сокрЛП(""));
               КонецЕсли;   
         если услуга = спр1 тогда
          усл3 = услуга;
         сообщить ("JBO"+" , " +усл3);
         к2 = выборка.кол;
            усл4 = к2;
            ДБФ.УстановитьЗначениеПоля("JBO",сокрЛП(усл4));
         иначе      ДБФ.УстановитьЗначениеПоля("JBO",сокрЛП(""));
         конецесли ;         
                 если услуга = спр2 тогда
          усл5 = услуга;
         сообщить ("JBONP"+" , " +усл5);
         к3 = выборка.кол;
            усл6 = к3;
            ДБФ.УстановитьЗначениеПоля("JBONP",сокрЛП(усл6));
         иначе      ДБФ.УстановитьЗначениеПоля("JBONP",сокрЛП(""));
           КонецЕсли;

Оффлайн wise

  • ****
  • Сообщений: 428
  • РЕПУТАЦИЯ: 58
  • КПД: 14%
  • Кто сгорел, того не подожжешь
  • Регистрация: 2013-03-21
  • Сайт: 
  • Профессия: Ученик 1С
              |   УПЖКХ_Начисления.ЛицевойСчет КАК ЛицевойСчет,
              |   УПЖКХ_Начисления.СуммаНачисления,
              |   УПЖКХ_Начисления.ДнейНачислено,
              |   УПЖКХ_Начисления.Период,
              |   УПЖКХ_Начисления.МесяцНачисления,
              |   УПЖКХ_Начисления.Услуга КАК усл,
              |   УПЖКХ_Начисления.Тариф,
             !!! |   Сумма(УПЖКХ_Начисления.Количество) КАК кол,!!
              |   КВП_ЛицевыеСчета.Ссылка КАК л
              |ИЗ
              |   РегистрНакопления.УПЖКХ_Начисления КАК УПЖКХ_Начисления
              |      ЛЕВОЕ СОЕДИНЕНИЕ Справочник.КВП_ЛицевыеСчета КАК КВП_ЛицевыеСчета
              |      ПО УПЖКХ_Начисления.ЛицевойСчет = КВП_ЛицевыеСчета.Ссылка
              |ГДЕ
              |   УПЖКХ_Начисления.Период МЕЖДУ &начдата И &кондата
              |   И УПЖКХ_Начисления.Количество <> 0
              |
              |СГРУППИРОВАТЬ ПО
              |   КВП_ЛицевыеСчета.Ссылка,
              |   УПЖКХ_Начисления.ЛицевойСчет,
              |   УПЖКХ_Начисления.СуммаНачисления,
              |   УПЖКХ_Начисления.ДнейНачислено,
              |   УПЖКХ_Начисления.Период,
              |   УПЖКХ_Начисления.МесяцНачисления,
              |   УПЖКХ_Начисления.Услуга,
              |   УПЖКХ_Начисления.Тариф
              |
              |УПОРЯДОЧИТЬ ПО
              |   л
              |АВТОУПОРЯДОЧИВАНИЕ";
            //|ИТОГИ ПО
              //|   л"

p.s. НЕ понятно ЗАЧЕМ получаешь КУЧУ(СуммаНачисления,ДнейНачислено,Период... и т.д.)данных если они НЕ используются...

переменные ЛУЧШЕ инициализировать ДО цикла! {   
            Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
     
                  спр1 = справочники.КВП_Услуги.НайтиПоКоду("000007");
                  спр = справочники.КВП_Услуги.НайтиПоКоду("000013");
                  спр2 = справочники.КВП_Услуги.НайтиПоКоду("000011");
}
Представьте себе, какая была бы тишина, если бы люди говорили только то, что знают


Теги:
 

Помогите срочно!! В вкладке "Сервис"--> "Журнал регистрации" отражаются все операции как можно определить сделаны ли операции "задним числом" и как вычислить первоначальную информацию какой расчет поменял на другой?

Автор 2ronРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 4292
Последний ответ 24 Дек 2015, 15:34
от дфтын
Помогите подобрать Back-office и Front-office

Автор avrnskРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 5551
Последний ответ 07 Сен 2010, 12:01
от mohock
Помогите с отчётами в УТ 10.3. (Ведомость по товарам и ведомость по заказам)

Автор chum710Раздел Пользователям "1С - Предприятие 8"

Ответов: 2
Просмотров: 5885
Последний ответ 28 Мар 2012, 13:02
от chum710
Помогите с отчетом "Валовая прибыль"

Автор Dm109Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 4
Просмотров: 4366
Последний ответ 10 Сен 2015, 13:57
от Dm109
помогите с отчетом "характеристики контрагентов"

Автор Vasya PovarРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 2
Просмотров: 1978
Последний ответ 07 Дек 2016, 15:53
от Kironten

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
172 Сообщений
ilyay ilyay
75 Сообщений
oleg-x
51 Сообщений
alex0402
49 Сообщений
andron81_81
39 Сообщений
AIFrame
37 Сообщений
MuI_I_Ika MuI_I_Ika
34 Сообщений
BuhRust
30 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
26 Сообщений

* Кто онлайн

  • Точка Гостей: 584
  • Точка Скрытых: 0
  • Точка Пользователей: 7
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal