Гость
Форумы / [игнор отключен] [закрыт для гостей] / Открытие сохраненных таблиц / 9 сообщений из 9, страница 1 из 1
01.08.2008, 16:00
    #35465976
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
После формирования отчета его необходимо сохранить в формате xls. Проблема возникает при открытии этого файла опен офисом. Во всех ячейках с типом значения "дата" добавляется апостроф ' . Это можно, конечно, решается с помощью макроса, но хотелось бы все это исправить средствами 1С. Есть какие-либо предложения?
З.Ы. 1С77 (7.70.027)
...
Рейтинг: 0 / 0
01.08.2008, 16:05
    #35465993
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Совсем забыл. OpenOffice версии 2.4.1. Проблема имеет место и в более ранних версиях
...
Рейтинг: 0 / 0
01.08.2008, 16:37
    #35466088
Паля
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Во - а мне бухи жаловались что им контрагенты свои отчёты в таком виде присылают - дата с апострофом..всё не мог понять как это они делают!!

>>но хотелось бы все это исправить средствами 1С. Есть какие-либо предложения?
выводить как строку = формат(дата, "dd.MM.yy").
...
Рейтинг: 0 / 0
01.08.2008, 16:47
    #35466120
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
И это делал. все варианты формата перепробовал. Также пытался создавать документ OpenOffice.Calc и уже в него прописывать дату, причем использовал типы значения ячейки text и value. Результат один и тот же
...
Рейтинг: 0 / 0
01.08.2008, 16:54
    #35466137
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Вот текст обработки:

Процедура Сформировать()
scr = СоздатьОбъект("MSScriptControl.ScriptControl");
scr.language = "javascript";
scr.eval("Массив=new Array()");
Массив = scr.eval("Массив");
scr.AddCode("function SetItem(ind,val){Массив[ind]=val}");

ServiceManager=СоздатьОбъект("com.sun.star.ServiceManager");
scr.AddObject("ServiceManager",ServiceManager);
Desktop = ServiceManager.createInstance("com.sun.star.frame.Desktop");
//создаем новый документ OO.Calc
Document = Desktop.LoadComponentFromURL("private:factory/scalc", "_blank", 0, Массив);
Листы = Document.getSheets();
Лист = Листы.getByIndex(0);
Лист.getCellByPosition(1,1).string=текущаядата();
dispatcher = ServiceManager.CreateInstance("com.sun.star.frame.DispatchHelper");

scr.eval("mas1=new Array()");
mas1 = scr.eval("mas1");

SaveParam = scr.Eval("ServiceManager.Bridge_GetStruct('com.sun.star.beans.PropertyValue')");

//записываем параметры для поиска и замены в массив
SaveParam.Name = "SearchItem.StyleFamily";
SaveParam.Value = 2;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.CellType";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.RowDirection";
SaveParam.Value = 1;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.AllTables";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.Backward";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.Pattern";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.Content";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.AsianOptions";
SaveParam.Value = 0;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.AlgorithmType";
SaveParam.Value = 1;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.SearchFlags";
SaveParam.Value = 65536;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.SearchString";
SaveParam.Value = ".*";
mas1.push(saveparam);
SaveParam.Name = "SearchItem.ReplaceString";
SaveParam.Value = "&";
mas1.push(saveparam);
SaveParam.Name = "SearchItem.Locale";
SaveParam.Value = 255;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.ChangedChars";
SaveParam.Value = 2;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.DeletedChars";
SaveParam.Value = 2;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.InsertedChars";
SaveParam.Value = 2;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.TransliterateFlags";
SaveParam.Value = 1280;
mas1.push(saveparam);
SaveParam.Name = "SearchItem.Command";
SaveParam.Value = 3;
mas1.push(saveparam);
//запускаем НайтиЗаменить
dispatcher.executeDispatch(document.CurrentController.Frame, ".uno:ExecuteSearch", "", 0, mas1);
КонецПроцедуры

Может тут что-то не так?
...
Рейтинг: 0 / 0
04.08.2008, 12:20
    #35468468
Палестинец
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
апостроф возникает, когда в ячейку типа дата ты прописываешь строку. (чтоб отобразить что это несоотв. тип он и рисует апостроф)

что вот тут например происходит:
Лист.getCellByPosition(1,1).string=текущаядата();

т.е. ты либо не в стринг пиши, либо тип ячейки смени на строковый.
...
Рейтинг: 0 / 0
04.08.2008, 14:16
    #35468879
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Пробовал писать строка(ТекущаяДата()). Не помогло
...
Рейтинг: 0 / 0
04.08.2008, 16:57
    #35469391
Палестинец
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Варианты:

.Formula = "2004.07.31"
.Formula = "=DATE(2004;07;31)"
...
Рейтинг: 0 / 0
05.08.2008, 08:53
    #35470201
dfedotov
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Открытие сохраненных таблиц
Палестинец
.Formula = "=DATE(2004;07;31)"

Самое оно!! Спасибо
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Открытие сохраненных таблиц / 9 сообщений из 9, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]