|
Конвертировать ТабличныйДокумент в 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) Да, он очень большой!
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |