|   |   | 
| 
 | Конвертировать ТабличныйДокумент в csv | ☑ | ||
|---|---|---|---|---|
| 0
    
        Dolphinbet 21.08.15✎ 15:46 | 
        При попытке сохранения табличного документа в формате XLSX происходит вылет с нехваткой памяти. Есть идея попробовать сохранить хотя бы в csv... Может у кого есть готовая обработочка?)     | |||
| 1
    
        ДенисЧ 21.08.15✎ 15:47 | 
        сохрани в mxl, потом отдельной утилитой от 1с конверьть     | |||
| 2
    
        Dolphinbet 21.08.15✎ 15:47 | 
        а что за утилита такая?     | |||
| 3
    
        ДенисЧ 21.08.15✎ 15:48 | 
        FileWorkShop - вроде так называется     | |||
| 4
    
        User_Agronom 21.08.15✎ 15:51 | 
        (0) csv - это обычный текстовый файл. В чём проблема, непонятно...
 А то сейчас дети форточек насоветуют кучу мелких и мягких костылей)) | |||
| 5
    
        Dolphinbet 21.08.15✎ 16:00 | 
        FileWorkShop так это просто просмотр mxl файлов для тех у кого нет 1С ...     | |||
| 6
    
        ДенисЧ 21.08.15✎ 16:00 | 
        (5) чушь     | |||
| 7
    
        Dolphinbet 21.08.15✎ 16:00 | 
        В описании так написано)     | |||
| 8
    
        Dolphinbet 21.08.15✎ 16:02 | 
        Программа "1С:Предприятие - Работа с файлами" представляет собой отдельный программный продукт, который распространяется бесплатно. Она предназначена для просмотра и редактирования файлов 1С:Предприятия на тех компьютерах, где система 1С:Предприятие не установлена.     | |||
| 9
    
        ДенисЧ 21.08.15✎ 16:03 | 
        (8) Редактирования, Карл!
 В том числе и конвертирования | |||
| 10
    
        Dolphinbet 21.08.15✎ 16:05 | 
        (9) а чем она лучше для конвертирования чем собственно сама 1с? А как с помощью нее программно конвертировать mxl?     | |||
| 11
    
        ДенисЧ 21.08.15✎ 16:05 | 
        программн - никак     | |||
| 12
    
        Dolphinbet 21.08.15✎ 16:10 | 
        У меня кстати и в mxl отчет не сохраняется     | |||
| 13
    
        Dolphinbet 21.08.15✎ 16:10 | 
        Тоже пишет недостаточно памяти)     | |||
| 14
    
        Dolphinbet 21.08.15✎ 16:11 | 
        В общем походу надо обрабатывать данные табличного документа и формировать вручную csv....     | |||
| 15
    
        stix2010 21.08.15✎ 16:13 | 
        ты за время пока спрашивал уже мог бы все написать:
 Обработочка ИмяФайлаВыгрузки=КаталогФайлов+"\"+ИмяФайла; Запись = Новый ЗаписьТекста(ИмяФайлаВыгрузки, КодировкаТекста.UTF8); //Выгружаем данные строки столбцов СтрокаСтолбцов="UID;ROOM;PERSON_ID;LASTNAME;FIRSTNAME;MIDDLENAME;BIRTHDATE;"; СтрокаСтолбцов=СтрокаСтолбцов+"GENDER;BIRTHPLACE_COUNTRY;BIRTHPLACE1;BIRTHPLACE2;BIRTHPLACE3;BIRTHPLACE4;"; СтрокаСтолбцов=СтрокаСтолбцов+"CITIZENSHIP;DOCUMENT_ID;TYPE;SERIES;NUMBER;ISSUEDATE;AUTHORITY;CODE;"; СтрокаСтолбцов=СтрокаСтолбцов+"LIVINGPLACE_COUNTRY;LIVINGPLACE1;LIVINGPLACE2;LIVINGPLACE3;LIVINGPLACE4;LIVINGPLACE_STREET;"; СтрокаСтолбцов=СтрокаСтолбцов+"LIVINGPLACE_HOUSE;LIVINGPLACE_BUILDING;LIVINGPLACE_FLAT;ARRIVALDATE;DEPARTUREDATE;"; СтрокаСтолбцов=СтрокаСтолбцов+"REGISTRATIONDATE;EMPLOYEE"; Запись.ЗаписатьСтроку(СтрокаСтолбцов); //и, поехали Для каждого с из Тз Цикл СтрокаДанных=""+cs(s.UID)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.ROOM)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.PERSON_ID)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LASTNAME)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.FIRSTNAME)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.MIDDLENAME)+";"; СтрокаДанных=""+СтрокаДанных+Format(s.BIRTHDATE, "DF=yyy-MM-dd")+";"; СтрокаДанных=""+СтрокаДанных+cs(s.GENDER)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.BIRTHPLACE_COUNTRY)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.BIRTH_PLACE1)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.BIRTH_PLACE2)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.BIRTH_PLACE3)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.BIRTH_PLACE4)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.CITIZENSHIP)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.DOCUMENT_ID)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.TYPE)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.SERIES)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.NUMBER)+";"; СтрокаДанных=""+СтрокаДанных+Format(s.ISSUEDATE,"DF=yyy-MM-dd")+";"; СтрокаДанных=""+СтрокаДанных+cs(s.AUTHORITY)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.CODE)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE_COUNTRY)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE1)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE2)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE3)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE4)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE_STREET)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE_HOUSE)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE_BUILDING)+";"; СтрокаДанных=""+СтрокаДанных+cs(s.LIVINGPLACE_FLAT)+";"; СтрокаДанных=""+СтрокаДанных+format(s.ARRIVALDATE,"DF=yyy-MM-dd")+";"; СтрокаДанных=""+СтрокаДанных+format(s.DEPARTUREDATE, "DF=yyy-MM-dd")+";"; СтрокаДанных=""+СтрокаДанных+format(s.REGISTRATIONDATE, "DF=yyy-MM-dd")+";"; СтрокаДанных=""+СтрокаДанных+cs(s.EPMLOYEE)+";"; Запись.ЗаписатьСтроку(СтрокаДанных); КонецЦикла; Запись.Закрыть(); Сообщить(ИмяФайлаВыгрузки+" выгружен"); | |||
| 16
    
        Dolphinbet 21.08.15✎ 16:23 | 
        Так у меня не ТЗ а ТабличныйДокумент)     | |||
| 17
    
        User_Agronom 21.08.15✎ 16:27 | 
        (16) Его нельзя программно читать?
 А лучше посмотреть откуда он получается. | |||
| 18
    
        Dolphinbet 21.08.15✎ 16:28 | 
        СиЭсВи= новый ТекстовыйДокумент;
 Для стр=ПерваяСтрока по Таб.ВысотаТаблицы цикл текСтрока=""; Для колонка=1 по Таб.ШиринаТаблицы цикл СтрокаМакета=стрзаменить(стр," ",""); СтрокаМакета=стрзаменить(СтрокаМакета,символ(160),""); колонкаМакета=стрзаменить(колонка," ",""); колонкаМакета=стрзаменить(колонкаМакета,символ(160),""); текЗначение=Таб.ПолучитьОбласть("R"+СтрокаМакета+"C"+колонкаМакета).текущаяобласть.текст; текЗначение=СтрЗаменить(текЗначение,Разделитель,""); текСтрока=текСтрока+?(колонка>1,Разделитель,"")+текЗначение; Конеццикла; СиЭсВи.ДобавитьСтроку(текСтрока); Конеццикла; СиЭсВи.Записать(Файлcsv); | |||
| 19
    
        aka AMIGO 21.08.15✎ 16:30 | 
        Zyltrc^ CSV (от англ. Comma-Separated Values — значения, разделённые запятыми) — текстовый формат, предназначенный для представления табличных данных. Каждая строка файла — это одна строка таблицы.
 Подчеркиваю: текстовый! т.е. создаещь тестовый файл, а сохраняешь его как *csv. Точно-точно! у меня именно так одна обработка и работает.. только одно замечаньице: Мне пришлось разжделать значения таблицы не запятой, а точкой-с-запятой. Нормально открывается в LibreOffice, в MS Excel, в блокноте :) | |||
| 20
    
        aka AMIGO 21.08.15✎ 16:31 | 
        * Zyltrc^ = издержки копипаста :)     | |||
| 21
    
        User_Agronom 21.08.15✎ 16:33 | 
        (18) Теме час, а этот код ты писал около 5 минут))     | |||
| 22
    
        Dolphinbet 21.08.15✎ 16:34 | 
        (21) щас еще проверим что из этой затеи выйдет)     | |||
| 23
    
        Dolphinbet 21.08.15✎ 16:41 | 
        Блин наверно лучше использовать ЗаписьТекса, чем ТекстовыйДокумент...     | |||
| 24
    
        stix2010 21.08.15✎ 17:06 | 
        да и еще строки при формировании надо чистить от возможных в данных разделителей (это типа лучше "," не использовать), разделители в офисах настраиваются     | |||
| 25
    
        Serginio1 21.08.15✎ 17:11 | 
        Лучше использовать разделитель табулятор. Предварительно конечно очищать от них строку     | |||
| 26
    
        Dolphinbet 21.08.15✎ 17:51 | 
        Всем спасибо! Отчет сформировался)     | |||
| 27
    
        mistеr 21.08.15✎ 17:58 | 
        (12) У тебя похоже с отчетом проблемы.     | |||
| 28
    
        Dolphinbet 21.08.15✎ 18:38 | 
        (27) Да, он очень большой!     | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |