8.х Выгрузка из ЗиУП 8.1 в тхт файл

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем yty65, 26 авг 2010.

  1. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Я новичок в прог-ии... Подскажите, как при выгрузке в тхт файл, добавить строку с параметром (Число + Строка). Надо выгрузить Сумму и ФизЛицо! Ещё конечно надо к этой строки прибавить ЛицСчёт физлица, но его в документе нету, так понимаю нужен запрос, помогите с первым и со вторым по возможности.
    При таком тексте ругается "Преобразование значения к типу Число не может быть выполнено"

    Зарание Спасибо!

    Текс:
    _______________________________________________________________________________________
    Текст = Новый ТекстовыйДокумент;

    Выборка = Документы.ЗарплатаКВыплатеОрганизаций.Выбрать();
    Пока Выборка.Следующий() Цикл

    Для каждого ТекущаяСтрока Из Зарплата Цикл

    Сумма = ТекущаяСтрока.Сумма;
    ФизЛицо = ТекущаяСтрока.Физлицо;

    КонецЦикла;

    Текст.ДобавитьСтроку(Сумма + ФизЛицо);

    КонецЦикла;
    Путь = "c:\ФайлДляБанка.txt";
    Текст.Записать(Путь, КодировкаТекста.OEM);
  2. has
    Offline

    has Опытный в 1С

    Регистрация:
    18 июн 2009
    Сообщения:
    708
    Симпатии:
    0
    Баллы:
    26
    Текст.ДобавитьСтроку(Строка(Сумма) + ФизЛицо);

    И кстати почему без разделителя? Т.е. у вас получится строка "123Иванов"
  3. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Спасибо добрый человек! С лицевым счётом не поможите?
  4. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Текст запроса будет выглядеть как-то так:
    Код:
    "ВЫБРАТЬ
    ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо,
    ЗарплатаКВыплатеОрганизацийЗарплата.Сумма,
    ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета
    ИЗ
    Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК ЗарплатаКВыплатеОрганизацийЗарплата
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации
    ПО ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо = ЛицевыеСчетаРаботниковОрганизации.ФизЛицо
    И ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка.Организация = ЛицевыеСчетаРаботниковОрганизации.Организация"
    
  5. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    В запросе про банк(контрагента) забыли т.к у сотрудника могут быть счета в разных банках
  6. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Ну эт как бы да. Тут я просто не в курсе технических подробностей: там связка идет ведь по организации, а разве у одного работника в одной организации может быть открыто несколько лицевых счетов?

    Код:
    "ВЫБРАТЬ
    ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо,
    ЗарплатаКВыплатеОрганизацийЗарплата.Сумма,
    ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета
    ИЗ
    Документ.ЗарплатаКВыплатеОрганизаций.Зарплата КАК ЗарплатаКВыплатеОрганизацийЗарплата
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации
    ПО ЗарплатаКВыплатеОрганизацийЗарплата.Физлицо = ЛицевыеСчетаРаботниковОрганизации.ФизЛицо
    И ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка.Организация = ЛицевыеСчетаРаботниковОрганизации.Организация
    И ЗарплатаКВыплатеОрганизацийЗарплата.Ссылка.Банк = ЛицевыеСчетаРаботниковОрганизации.Банк"
    
  7. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Угу...даже по конфигуратору гляньте Банк как измерение занесено, хотя релизов 5 назад такой возможности не было..
  8. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Спасибо... А как теперь результат запроса вывести в программу, для передачи на тхт файл, т.е как подвязать ЛицСчёт к тексту выше, для добавления его в файл, или всё по другому надо писать? Подскажите пожалуйста!
  9. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Текст = Новый ТекстовыйДокумент;

    Запрос= Новый Запрос;

    Запрос.Текст="";//сюда вставите текст запроса, который вам написали выше ну там еще условие добавитена ссылку.

    Выборка = Запрос.Выполнить.Выбрать();
    Пока Выборка.Следующий() Цикл

    Сумма = Выборка.Сумма;
    ФизЛицо = Выборка.Физлицо;
    НомерЛицевогоСчета=Выборка.НомерЛицевогоСчета;
    Текст.ДобавитьСтроку(Строка(Сумма) + ФизЛицо+" "+НомерЛицевогоСчета);

    КонецЦикла;
    Путь = "c:\ФайлДляБанка.txt";
    Текст.Записать(Путь, КодировкаТекста.OEM);
  10. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Выборка = Запрос.Выполнить.Выбрать();
    Пока Выборка.Следующий() Цикл

    При таком коде ругается, что не найдено поле "Выполнить"

    а если: Выборка = Запрос.Выполнить();
    Выборка.Выбрать();


    Пока Выборка.Следующий() Цикл

    Ругается, что не найден метод "Следующий".
    Что не так?
  11. shurikvz
    Offline

    shurikvz Модераторы Команда форума Модератор

    Регистрация:
    1 окт 2009
    Сообщения:
    8.410
    Симпатии:
    316
    Баллы:
    104
    Код:
    Выборка = Запрос.Выполнить().Выбрать();
    Пока Выборка.Следующий() Цикл
    ...
    
    
  12. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Подскажите пожалуйста ещё один момент. У документа есть номер, характер выплаты и ПереодРегистрации... требуется, что бы в имя выгружаемого файла добавлялись эти параметры.
    Например ФайлДляБанка_000001_Зарплата_За август.txt.
  13. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    Ну когда формируете имя файла обращайтесь к этим полям через Ссылку

    Путь = "c:\ФайлДляБанка_"+строка(Ссылка.Номер)+"_"+Строка(Ссылка.ХарактерВыплаты)+".txt";
    Текст.Записать(Путь, КодировкаТекста.OEM);
  14. TopicStarter Overlay
    yty65
    Offline

    yty65

    Регистрация:
    24 авг 2010
    Сообщения:
    27
    Симпатии:
    0
    Баллы:
    1
    Спасибо!
    Получилось вот так, только теперь сформированный файл, не имеет формата .тхт, в чем загвозка?
    Путь = "D:\Файлы для банка\Форвард-проф.спорт_" +Строка(Ссылка.Номер)+"_"+Строка(Ссылка.ХарактерВыплаты)+"_"+Строка(Ссылка.ПериодРегистрации)+".txt";
  15. Draco
    Offline

    Draco Модераторы Команда форума Модератор

    Регистрация:
    28 окт 2009
    Сообщения:
    13.649
    Симпатии:
    948
    Баллы:
    204
    А в итоге в переменной ПУТь что у Вас получается

Поделиться этой страницей