Заказы на доработку 1С (сервис удаленной работы)

Хранилище

База знаний
Неназначенных незавершенных заказов: 2, свеженьких 1
Бесплатные отчеты, обработки, конфигурации, внешние компоненты для 1С Статьи, описание работы, методики по работе с 1С

Здравствуйте, гость ( Вход | Зарегистрироваться )



> Экспорт в Excell          
vpr.ztr@gmail.co... Подменю пользователя
сообщение 04.06.20, 22:14
Сообщение #1

Молчаливый
*
Группа: Пользователи
Сообщений: 1
Спасибо сказали: 0 раз
Рейтинг: 0

Просьба помочь начинающему программировать в 1с, просто пишу вопрос в гугле, нахожу похожий пример и делаю по аналогии под свою задачу(не программист). Задача выгрузить данные в ексель из ведомости по ЗП для дальнейшего импорта из ексель в клиент банк (зарплатный проэкт). На даанный момент есть рабочая процедура которая выгружает в ексель часть данных и работает ОК. Остановился на моменте когда в ячейку нужно записать параметр из запроса. Вот код подскажите пожалуйста как заполнить там где ?????????

Код
Процедура КнопкаВыполнитьНажатие(Кнопка)
              
    
            
    ЗапросОрганизации = Новый Запрос;
    ЗапросОрганизации.Текст =
        "ВЫБРАТЬ
        |    Организации.НаименованиеПолное
        |ИЗ
        |    Справочник.Организации КАК Организации";
    
    ВыборкаОрганизации = ЗапросОрганизации.Выполнить().Выбрать();

    
    
    
     ЗапросБанки = Новый Запрос;
     ЗапросБанки.Текст = "ВЫБРАТЬ
     |    Банки.Код,
     |    Банки.Наименование,
     |    Банки.КоррСчет
     |ИЗ
     |    Справочник.Банки КАК Банки";
    
     ВыборкаБанки = ЗапросБанки.Выполнить().Выбрать();
    
     ЗапросБанковскиеСчета = Новый Запрос;
     ЗапросБанковскиеСчета.Текст = "ВЫБРАТЬ
     |    БанковскиеСчета.НомерСчета
     |ИЗ
     |    Справочник.БанковскиеСчета КАК БанковскиеСчета";
    
     ВыборкаБанковскиеСчета = ЗапросБанковскиеСчета.Выполнить().Выбрать();
    
     ЗапросЗарплатаКВыплатеОрганизаций = Новый Запрос;
     ЗапросЗарплатаКВыплатеОрганизаций.Текст = "ВЫБРАТЬ
     |    ЗарплатаКВыплатеОрганизаций.СуммаВыплаты,
     |    ЗарплатаКВыплатеОрганизаций.РаботникиОрганизации.(
     |        Сотрудник.Физлицо.Наименование,
     |        Сотрудник.Физлицо.КодПоДРФО,
     |        НомерКарточки
     |    )
     |ИЗ
     |    Документ.ЗарплатаКВыплатеОрганизаций КАК ЗарплатаКВыплатеОрганизаций";  
    
     ВыборкаЗарплатаКВыплатеОрганизаций = ЗапросЗарплатаКВыплатеОрганизаций.Выполнить().Выбрать();
    
EXEL = Новый COMObject("Excel.Application");
  
Книга = EXEL.WorkBooks.Add();
Лист2 = Книга.Sheets.Add();
Лист2.Name = "Amounts";
Лист1 = Книга.Sheets.Add();
Лист1.Name = "SheduleInfo";


Лист1.Cells(1, 1).Value = "SHEDULE_DATE";
Лист1.Cells(1, 2).Value = "SHED_NUMBER";
Лист1.Cells(1, 3).Value = "CLIENTNAME";
Лист1.Cells(1, 4).Value = "BANK_MFO";
Лист1.Cells(1, 5).Value = "BANK_NAME";
Лист1.Cells(1, 6).Value = "BANK_ACCNO";
Лист1.Cells(1, 7).Value = "BANK_ACCIBAN";
Лист1.Cells(1, 8).Value = "ACCOUNTNO";
Лист1.Cells(1, 9).Value = "ACCOUNTNO";
Лист1.Cells(1, 10).Value = "SHED_SUM";
Лист1.Cells(1, 11).Value = "EXTACCOUNT";
Лист1.Cells(1, 12).Value = "CONTRAGENT_ZKP";
Лист1.Cells(1, 13).Value = "COMMENTS";

Лист1.Cells(2, 1).Value = Дата;
Лист1.Cells(2, 2).Value = Номер;
Лист1.Cells(2, 3).Value = ВыборкаОрганизации.Организации.НаименованиеПолное;
Лист1.Cells(2, 4).Value = ???????????? Здесь должно быть полное наименование из запроса
Лист1.Cells(2, 5).Value =
Лист1.Cells(2, 6).Value =
Лист1.Cells(2, 7).Value =
Лист1.Cells(2, 8).Value =
Лист1.Cells(2, 9).Value =
Лист1.Cells(2, 10).Value =
Лист1.Cells(2, 11).Value =
Лист1.Cells(2, 12).Value =
Лист1.Cells(2, 13).Value =



Лист2.Cells(1, 1).Value = "IDCODE";
Лист2.Cells(1, 2).Value = "TABNO";
Лист2.Cells(1, 3).Value = "ACCOUNTNO";
Лист2.Cells(1, 4).Value = "ACCOUNTNO";
Лист2.Cells(1, 5).Value = "LASTNAME";
Лист2.Cells(1, 6).Value = "FIRSTNAME";
Лист2.Cells(1, 7).Value = "MIDDLENAME";
Лист2.Cells(1, 8).Value = "AMOUNT";


Попытка
        Книга.SaveAs(ПутьКФайлу);
    Исключение
        Сообщить(ОписаниеОшибки()+" Файл не сохранен!");
    КонецПопытки;
    
    EXEL.Application.Quit();

КонецПроцедуры


Сообщение отредактировал Vofka - 05.06.20, 8:18

volodya1122 Подменю пользователя
сообщение 05.06.20, 8:23
Сообщение #2

Оратор
Иконка группы
Группа: Местный
Сообщений: 336
Из: Тернопіль
Спасибо сказали: 133 раз
Рейтинг: 135.7

vpr.ztr@gmail.com @ Вчера, 23:14 * ,

Для начала нужно понимать что Вам возвращает запрос. Например из документа ЗарплатаКВыплатеОрганизаций вернет данные из всех документов ЗарплатаКВыплатеОрганизаций которые есть в базе. Из стравочников Вы вибираете данные. Вы уверены что там есть только одна запись в каждом из этих справочников?

И так.
1. Как понять что возвращает запрос? Я делаю так:
    ВыборкаЗарплатаКВыплатеОрганизаций = ЗапросЗарплатаКВыплатеОрганизаций.Выполнить().Выгрузить();
        Построитель = Новый ПостроительОтчета;
    Построитель.ИсточникДанных = Новый ОписаниеИсточникаДанных(ВыборкаЗарплатаКВыплатеОрганизаций);
    Построитель.Макет = Неопределено;
    Макет = Построитель.Макет;
    Область = Макет.Область();
    Область.ШиринаКолонки = 20;
     Построитель.Макет = Макет;
    Построитель.Выполнить();
    Построитель.Вывести();
// в итоге на экране я вижу таблицу из результатом запроса

2. Выборку из запроса нужно делать так:
ВыборкаОрганизации = ЗапросОрганизации.Выполнить().Выбрать();
Пока ВыборкаОрганизации.Следующий() Цикл
НаименованиеОрганизации=ВыборкаОрганизации.НаименованиеПолное;
//тут будут перебиратся все записи в справичнике организации, если их больше одного
КонецЦикла;




Moloko Подменю пользователя
сообщение 09.06.20, 9:59
Сообщение #3

Говорящий
***
Группа: Пользователи
Сообщений: 94
Спасибо сказали: 21 раз
Рейтинг: 18

vpr.ztr@gmail.com @ 04.06.20, 22:14 * ,
Я бы создал обычный отчет по запросу с нужными столбцами, а потом бы сохранил его как xls:
ТабДокумент.Записать(Путь+"\"+XXXXXX+".xls",ТипФайлаТабличногоДокумента.XLS);

Не нашли ответа на свой вопрос?
Зарегистрируйтесь и задайте новый вопрос.


Ответить Новая тема
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

RSS Текстовая версия Сейчас: 20.04.24, 2:15
1С Предприятие 8.3, 1С Предприятие 8.2, 1С Предприятие 8.1, 1С Предприятие 8.0, 1С Предприятие 7.7, Литература 1С, Общие вопросы по администрированию 1С, Методическая поддержка 1С - всё в одном месте: на Украинском 1С форуме!