Примеры нужны следующего характера:

Считывание данных с файла и запись в таблицу значений.
Запись данных в файл из таблицы значений.
Копирование файла и редактирование данных.
Все примеры должны работать как в модуле так и в форме обработки.
Все примеры нужны с файлами расширения *.ods.
---
копируй куда надо внутриности архива и запусти reg файл для регистрации.
ну а потом как обычно там 3 строчки кода в 1с надо написать.
---
может эта публикация тебе поможет

http://infostart.ru/public/116788/
---
Я пересмотрел кучу публикаций. И не нашел рабочего решения под управляемые формы например для УТ 11.
---
Буду увеличивать вознаграждение в зависимости от того, как часто мне будут предлагать какие - то варианты. Ведь за то, что я отвечаю капают старт мани и после каждого моего ответа, кому либо из участников вознаграждение увеличится. Получит скорее ВСЕ кто-то один. Или можно разделить сумму вознаграждения между участниками?
---
А это не? http://infostart.ru/public/101774/
---
Нужна инфа по OPEN OFFICE. CALC. по другим приложениям open office информация пока не интересна.
---
В демонстрационная конфигурация "Библиотека стандартных подсистем", редакция 2.0 есть Демо пример: формирование печатных форм MS Word и OpenOffice.org Writer.
Обработка формирования печатной формы документа "Демо: Списание товаров". Печатные формы создаются в формате популярных офисных пакетов. Используется для демонстрации возможноcтей подсистемы "Дополнительные отчеты и обработки".
---
В демонстрационная конфигурация "Библиотека стандартных подсистем", редакция 2.0 есть Демо пример: формирование печатных форм MS Word и OpenOffice.org Writer.
Обработка формирования печатной формы документа "Демо: Списание товаров". Печатные формы создаются в формате популярных офисных пакетов. Используется для демонстрации возможноcтей подсистемы "Дополнительные отчеты и обработки". А, там есть пример для calc?
---
А, там есть пример для calc?
А там все по аналогии с Excel. Вот документация по OpenOffice Calc http://wiki.services.openoffice.org/wiki/Documentation/BASIC_Guide/Spreadsheets
---
А там все по аналогии с Excel. Вот документация по OpenOffice Calc http://wiki.services.openoffice.org/wiki/Documentation/BASIC_Guide/Spreadsheets

Раз по аналогии, то приведи пример пожалуйста я же не просто так спрашиваю. Поможешь? отдам вознаграждение. А отправлять по ссылкам, которые я и сам мог найти в поиске это любой сможет. Очень жду пример если это будет рабочая обработка-пример с файлом "таблица.ods" буду безмерно благодарен. Обещаю, что дам еще 20 старт мани, помимо данного вознаграждения тому кто действительно поможет примером РАБОЧИМ.
---
Попытка
 OpenOffice = Новый COMОбъект("TOpenOffice.Bridge"); //Пытаемся создаем объект OpenOffice
 OpenOffice.Open(ПутьКФайлу);
Исключение
 // Обработка ошибки
КонецПопытки
Значение = OpenOffice.Cells(Стр,КолонкаНаименование).Value;
OpenOffice.Close();
OpenOffice = 0;

Предварительно нужно скопировать библиотеку TOpenOffice на комп и запустить один раз.
---
на код
```1c
    OpenOffice = Новый COMОбъект("TOpenOffice.Bridge"); //Пытаемся создаем объект OpenOffice
    OpenOffice.Open(Объект.ПолныйПутьКФайлу);
```

1С ка ругнулась

{Форма.Форма.Форма(50)}: Ошибка при вызове конструктора (COMОбъект): Недопустимая строка с указанием класса: Недопустимая строка с указанием класса
---
Сообщение было скрыто модератором.
---
http://kb.mista.ru/article.php?id=574

вот непохой пример работы с ОО
---
Попытка
OpenOffice = Новый COMОбъект("TOpenOffice.Bridge"); //Пытаемся создаем объект OpenOffice
OpenOffice.Open(ПутьКФайлу);
Исключение
// Обработка ошибки
КонецПопытки
Значение = OpenOffice.Cells(Стр,КолонкаНаименование).Value;
OpenOffice.Close();
OpenOffice = 0;

Предварительно нужно скопировать библиотеку TOpenOffice на комп и запустить один раз.

Гуд, начало положено. Надо проверить через минут 20 отпишусь.
---
перем массив;

scr = новый COMОбъект("MSScriptControl.ScriptControl");
scr.Language = "javascript";
scr.AddCode("function SetItem(ind,val){Arr[ind]=val}");
Массив = scr.Eval("Arr=new Array()");

ServiceManager = новый COMОбъект("com.sun.star.ServiceManager");
Desktop = ServiceManager.createInstance("com.sun.star.frame.Desktop");
Document = Desktop.LoadComponentFromURL(convertToURL(ИмяФайла), "_blank", 0, Массив);
Sheets = Document.getSheets();
Sheet = Sheets.getByName("ИмяЛиста");

дальше как обычно

Sheet.getCellByPosition(поз1, поз2).getString()
---
http://wiki.services.openoffice.org/wiki/Documentation/DevGuide/ProUNO/Bridge/Automation_Bri­dge

вот еще статейка
---
Так супер, спасибо за примеры я немного был занят. Скоро буду применять все выше описанное на практике.
---
Попробуйте soffice.StarCalcDocument или opendocument.CalcDocument
---
Пардон, установил библиотеку TOpenOffice на комп и запустить один раз. и запустил код заработал.
---
Кстати а как сделать так, что бы программа open ofice org после отработки этого кода
```1c
    Попытка
    OpenOffice = Новый COMОбъект("TOpenOffice.Bridge"); //Пытаемся создаем объект OpenOffice
    OpenOffice.Open(ПутьКФайлу);
    Исключение
    // Обработка ошибки
    КонецПопытки
    Значение = OpenOffice.Cells(Стр,КолонкаНаименование).Value;
    OpenOffice.Close();
    OpenOffice = 0;
```
,

закрылась сама автоматом а не висела в виде открытого окна.
---
ну это есть недостаток библиотеки этой.
не знаю 1с позволяет апи винды вызывать или нет, но можно было бы по имени окна гаснуть окно и все как с++
---
посмотри в методах библиотеки, может там есть метод free или подобный
---
вот порылся вродь такие методы есть

OpenOffice.Disconnect;
OpenOffice.Free;
---
ага ок. Спс.
Ты извини что отвечаю не сразу. просто я работаю дома. И ногда отлучаюсь в город по делам.
---
А почему-бы вам не попробовать распаковать ods файл, обращаясь к нему как к обычному zip-архиву, а потом распарсить вложенные в него xml-ки?

Могу предложить несколько кусков кода, которые делают это с форматом odt
---
q1q1q1, если уже и парсить, то мне бы легче было написать на C# библиотеку COM где все будет парсится и подключить ее к 1с
---
На данный код

```1c
    OpenOffice.Disconnect;
    OpenOffice.Free;
```

1С ка ругается.

{Форма.Форма.Форма(22,23)}: Неопознанный оператор
 OpenOffice.Disconnect<<?>>; (Проверка: Сервер)
{Форма.Форма.Форма(23,17)}: Неопознанный оператор
 OpenOffice.Free<<?>>; (Проверка: Сервер)
{Форма.Форма.Форма(22,23)}: Неопознанный оператор
 OpenOffice.Disconnect<<?>>; (Проверка: Тонкий клиент)
{Форма.Форма.Форма(23,17)}: Неопознанный оператор
 OpenOffice.Free<<?>>; (Проверка: Тонкий клиент)
---
если уже и парсить, то мне бы легче было написать на C# библиотеку COM где все будет парсится и подключить ее к 1с
Це ваше право, хотя мне рещительно непонятно чем парсинг файлика на C# будет принципиально отличаться от парсинга файлика на 1С. Особливо если учесть, шо большая часть парсинга укладывается в СтрЗаменить.
---
вобще то разбор xml в C# это просто сказка, в отличии 1С

1. Отличный инструменты XPath
2. Супер легкий XDocument (Linq)

да я и уверен что на C# разбор пройдет куда быстрее чем на 1с(та и в ней нет таких инструментов равноценно только Xmlreader)

забыл добавить, в C# для разбора xml некаких СтрЗаменить(String.Replace()) ненадо, там просто читаешь нужные ноди
---
Народ помогайте плиз. Zale я думал до конца добьем эту ветку и многие опыт получат и ты лишние star many. Я нашел ссылку http://www.interface.ru/home.asp?artId=20464, но сразу не договняю, что и как делать,
http://www.interface.ru/home.asp?artId=20464.

Например: Для того что бы понять как все работает и естественно хотелось бы видеть комменты на кадую строчку кода. Топик может разрастись. Мне не жаль будет star many. Кто действительно поможет по теме. Отдам все накопленные в этой ветке.

```1c
    Перем OpenOffice;

    &НаСервере
    Функция ПодключениеКОпенОфисуПрошлоУспешно()
    Попытка
    OpenOffice = Новый COMОбъект("TOpenOffice.Bridge"); //Пытаемся создаем объект OpenOffice
    OpenOffice.Open(Объект.ПолныйПутьКФайлу);
    Возврат Истина;
    Исключение
    Сообщить(ОписаниеОшибки());
    Возврат Ложь;
    КонецПопытки;
    КонецФункции

    &НаКлиенте
    Процедура ВыгрузитьВФайл(Команда)
    ВыгрузитьВФайлСервер();
    КонецПроцедуры

    &НаСервере
    Процедура ВыгрузитьВФайлСервер()
    Если Не ПодключениеКОпенОфисуПрошлоУспешно() Тогда
    Возврат;
    КонецЕсли;
    НоваяКнига = OpenOffice.NewWorkBook();
    Счетчик = 1;
    OpenOffice.Cells(1,1).text = "Номенклатура";
    OpenOffice.Cells(1,2).text = "Цена";
    Для каждого стр из Объект.СсылкаНаДок.Товары цикл
    Счетчик = Счетчик + 1;
    OpenOffice.Cells(Счетчик,1).text=Стр.Номенклатура.Наименование;
    OpenOffice.Cells(Счетчик,2).text=Стр.Цена;
    КонецЦикла;

    КонецПроцедуры
```
---
Вот вопрос по коду написаному мной в последнем сообщении. Как теперь сохранить файл? И сделать все таки так что бы скрылись "не нужные окна".
---
Я про эти методы
вот порылся вродь такие методы есть

OpenOffice.Disconnect;
OpenOffice.Free;

они в ут 11 т.е. в управляемых формах не пашут.
Может я что-то не то делаю...??
---
НоваяКнига.SaveAs()
---
Правда в ссылках пишут это:

Document.StoreToURL(FileName, VariantArray);
---
текст из http://www.interface.ru/home.asp?artId=20464.

Комментарии конечно может и излишни но в моем случае "НЕПОНЯТНО".
---
Тут скорее всего описывается свойство метода "Disconnect". Быть может чтобы окошко какое-нить не вылазило, типа "точно закрыть программу"
---
Правда в ссылках пишут это:

Document.StoreToURL(FileName, VariantArray);

А что подставить вместо FileName и VariantArray?
---
Чтоб окно было невидимым

OpenOffice.Visible = false;
---
ну если допустим тебе нужен не большой функционал, для работы с калк типа записать ячейки и записать файл

я могу нацарапать библиотеку на C# com'мовскую, с простыми методами без заморочи
---
А что бы сохранилось с определенным именем в формате *.ods?
---
ну если допустим тебе нужен не большой функционал, для работы с калк типа записать ячейки и записать файл

я могу нацарапать библиотеку на C# com'мовскую, с простыми методами без заморочи

нацарапай если не сложно.
---
ок, сейчас допишу один webpart, тут осталось пол часика и займусь твоей дллкой
---
Ок, понял спасибо. Очень жду.
---
FileName - Объект.ПолныйПутьКФайлу
VarriantAray - массив значений. Быть может он не обязателен, хотя не уверен.
---
FileName - Объект.ПолныйПутьКФайлу
VarriantAray - массив значений. Быть может он не обязателен, хотя не уверен.

и тебе спасибо щас попробую но тоже уже ни в чем не уверен.
---
Вот накопал в гугле: http://www.forum.mista.ru/topic.php?id=541056
---
alljoke, Вот накопал в гугле: http://www.forum.mista.ru/topic.php?id=541056

сам пробовал?
---
Нет. На ПК нет ОпенОфиса.
---
Кстати, сегодня работала библиотека "TOpenOffice", а сейчас что тоне пашет не пойму почему.

{Форма.Форма.Форма(50)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (TOpenOffice.Bridge): com.sun.star.lang.IllegalArgumentException: URL seems to be an unsupported one
---
Кстати, сегодня работала библиотека "TOpenOffice", а сейчас что тоне пашет не пойму почему.

{Форма.Форма.Форма(50)}: Ошибка при вызове метода контекста (Open): Произошла исключительная ситуация (TOpenOffice.Bridge): com.sun.star.lang.IllegalArgumentException: URL seems to be an unsupported one

нашел ощибку вопрос снимается.
---
Процесс пошол, уже формируется документ, осталось скомпоновать и отослать тебе, так что жди.
---
zale, Процесс пошол, уже формируется документ, осталось скомпоновать и отослать тебе, так что жди.

Супер, а твоя библиотера сможет, прочитать файл отредактировать его, и сохранить копию? в формате *.ods?
---
Я как раз отвечаю. И коплю те самые 20 sm.
---
Ура!!! инфостат заработал.
---
вобщем компильнул я тебе дллку, давай мейл я отправлю с инструкцией
---
да и опен офис ненужен для работы
---
sfedorov777@yandex.ru
---
копируй куда надо внутриности архива и запусти reg файл для регистрации.
ну а потом как обычно там 3 строчки кода в 1с надо написать.
---
А ты раскажешь по позже как пользоваться библиотекой в полном объеме?
---
теперь буду ее улутшать, что б потом в публикации добавить.
если есть вопросы пиши, помогу.
сейчас реализовано возможности чтение файла его правка и запись в файл с другим именем или перезапись.

я там тебе обработку кинул на чтение файла 8.2
---
ты мог бы рассказать? Про то какие команды можно использовать при чтении, записи и редактировании файла?
---
Просто dll ты мне дал, (спасибо) а как пользоваться ей я не знаю.
Просто могу понять, что на общее обозрение ты сейчас не хочешь ее выставлять все возможности, можешь мне рассказать в другим видом связи.
icq – 379-729-594
skype – bober7775
g - talk - fedorov.sergey.aleksandrovich@gmail.com
E-mail – sfedorov777@yandex.ru
---
Сообщение было скрыто модератором.
---
Сообщение было скрыто модератором.
---
Пример программного просмотра https://infofront.su/1c-chtenie-open-office-calc/