mikekaganski has quit [Quit: Miranda NG! Smaller, Faster, Easier. http://miranda-ng.org/]
mikekaganski has joined #libreoffice-ru
<jrj>
всем привет. я с продолжением своей темы про зависание
<jrj>
вот что ответил программер 1С:
<jrj>
Отправляемый файл открыл в Libre Calc, и сохранил в формат xlsx, ods.Если открывать эти файлы в Libre и копировать оттуда, то 1С виснет. Если эти файлы открыть в Excel и скопировать данные, 1С НЕ виснет. То есть, дело не в формате.
<jrj>
я так понял дело или в контенте документа. или в обработке этого контента офисной программой
<mikekaganski>
jrj: Я прошу прощения: я помню, что мы что-то обсуждали, но подробности просто напрочь стёрлись. Если есть возможность, кинь ссылку на лог чата на нужную дату. И в этом случае было бы здорово это обсуждать на форуме
<mikekaganski>
Там всё было бы сохранно для последующего обсуждения... ?
<mikekaganski>
jrj: дело в двух вещах (я говорю сейчас исходя из твоих слов сегодня, не из того, что было раньше): в том, что ЛО кидает в буфер (насколько это корректно) и как это воспринимает 1С
<mikekaganski>
Возможно, что мы делаем хреновый буфер, да; однако также возможно, что 1С напрочь заточена под особенности буфера от МС, и (в т.ч. корректные) данные, представленные иначе, её вешают
<mikekaganski>
так что нужно смотреть содержимое буфера сначала
<mikekaganski>
Кстати, в любом случае: если программа вешается от неверных входных данных - это косяк этой программы.
<mikekaganski>
Конечно, данные могут быть плохими, но в этом случае программа должна сообщить об этом и работать дальше
<mikekaganski>
У нас есть человек, который постоянно тестирует либру именно на устойчивость к мусору в исходных данных (использует fuzzers)
<jrj>
mikekaganski, согласен полностью
<jrj>
у меня сейчас задача понять где именно беда
<mikekaganski>
На винде есть хорошая программа (InsideClipboard, http://www.nirsoft.net/utils/inside_clipboard.html) для захватеа содержимого буфера. Ей можно скопировать текущий буфер в файл, потом на другой машине загрузить в память
<jrj>
если в 1с - писать им. но это очень сложно... такая ТП у них =)
<jrj>
могу сказать, что внешне данные выглядят по разному после вставки из МСО и ЛО
<mikekaganski>
удобно для анализа и воспроизведения. В буфер копируются одни и те же данные в нескольких форматах, а при вставке используется какой-то один. Можно убрать все, кроме одного, и проверить, какой именно даёт сбой
<jrj>
в ЛО есть какие-то вертикальные черточки на границе ячеек. после МСО все выглядит просто серенькими полосами, как обычные границы (не раскрашенные) между ячейками
<mikekaganski>
потом с этим можно работать подробнее, в т.ч. анализировать, что в буфере,, и насколько оно правильно
<jrj>
про буфер помню. помню прогу по твоему совету
<mikekaganski>
а, прошу прощения, я не помню, советовал или нет
<jrj>
но как это может помочь понять что там?
<jrj>
или может?
<jrj>
каюсь, сам не смотрел, доверился программеру 1С нашему
<mikekaganski>
может :) мы же можем потом посмотреть на содержимое буфера
<mikekaganski>
В зависимости от того, какой формат используется при вставке (и вызывает проблемы), дальше будет работа по проверке корректности именно этого формата
<mikekaganski>
если он некорректный, всё очевидно - надо исправлять. Если он корректный - можно поиграться с его модификацией вручную, чтобы понять, что роняет 1с, и отправить им подробный отчёт
<jrj>
используется "родной"
<mikekaganski>
Особенно просто, если в буфере используется какой-то текстовый формат, например, RTF, HTML, OOXML
<jrj>
если явно указать текстовый - все ок
<mikekaganski>
что такое "родной"?
<jrj>
сейчас наш программер решил через COM, где он делает вставку HTML контента
<jrj>
там тоже без проблем
<mikekaganski>
в буфере одновременно несколько представлений, и 1с САМА выбирает, какой ей нравится
<jrj>
да, я помню, что в буферен несколько вариантов
<mikekaganski>
а я не знаю, какой она выбирает
<jrj>
щас сам открою
<mikekaganski>
она может выбрать RTF, а может HTML - в обоих сохраняется форматирование
<mikekaganski>
и если мы воспользуемся InsideClipboard, мы можем удалить все, кроме одного, и посмотреть: виснет или нет
<mikekaganski>
виснет - значит, оно, и можно уже сконцентрироваться на нём
<jrj>
можно еще сравнить форматы, которые в клипборде после ЛО и МСО
<mikekaganski>
Ну, это тоже можно, но непосредственно сначало не поможет - конечно, мы не делаем идеальную копию
<mikekaganski>
наша задача не делать В ТОЧНОСТИ как у них, а делать КОРРЕКТНО
<jrj>
я не спорю с этим
<mikekaganski>
если у нас некорректно - сравнение поможет, подскажет, как можно правильно
<jrj>
я хочу понять где лечить и с какими агрументами
<mikekaganski>
да, всё верно, я просто сразу комментирую
<mikekaganski>
Ох, даже не знал, что мы столько форматов генерим. Открыл буфер калька, там 17 разных форматов :)
<JohnDoe_71Rus>
1с не может пережить такого щастья и роняется :)
<mikekaganski>
:)
<JohnDoe_71Rus>
"столько форматов. столько форматов! прям глаза разбегаются" (с) 1с
<mikekaganski>
... и всё такое интересненькое... что же выбрать? как быть? надо хорошенько подумать...
<JohnDoe_71Rus>
да да да
<JohnDoe_71Rus>
всегда думал что буфер обмена в винде един. дополнительно ставились програмки для возможности откатов и проч
<mikekaganski>
не совсем понял. Он действительно един
<mikekaganski>
с т.з. хранения в нём нескольких последовательных кусков
<jrj>
не, 1с падает не на вставке, а на последующей передаче или обработке контента. на чем именно - хз. отладчик встроенный не показывает. других средств прогеры не умеют
<jrj>
хорошо. я вижу 17 форматов. дальше ищу по одному на какой 1с падает?
<jrj>
точнее на каком из них 1с падает, так?
<mikekaganski>
Можно, кстати, использовать специальную вставку 1с - если там она есть
<mikekaganski>
то есть там, в специальной вставке, по одному выбирать, и проверить, на каком она упадёт
<jrj>
есть. там можно выбрать текст и еще что-то. 2 или 3 варианта. через них работает без пролем
<mikekaganski>
то есть да, по одному перебираем, пока не найдём, где валится
<mikekaganski>
все без проблем?
<jrj>
хз. надо уточнить у прогера
<mikekaganski>
я тут смотрю InsideClipboard - и не вижу, где убрать ненужные форматы..... я, похоже, её с чем-то перепутал в этом смысле
<jrj>
я вот только хотел спросить про это =)
<mikekaganski>
прошу прощения, сейчас буду искать, что может убрать ненужные\
<jrj>
кажись можно сделать копию нужного формата и в буфере останется только он
<mikekaganski>
jrj: нет, в буфере останется не он, к сожалению. Можно увидеть, что там не будет исходного формата (Format Name)
<jrj>
не
<jrj>
в смысле не останется формат
<mikekaganski>
jrj: я в ступоре. У меня стойкое дежавю, что я пользовался вычищением ненужных ворматов, когда правил баги с буфером в импрессе, но вот ищу - и не могу ничего найти. Наверное, просто что-то с башкой.
JohnDoe_71Rus has quit [Read error: Connection reset by peer]
JohnDoe_71Rus has joined #libreoffice-ru
VVD has quit [Ping timeout: 258 seconds]
VVD has joined #libreoffice-ru
JohnDoe_71Rus has quit [Read error: Connection reset by peer]
JohnDoe_71Rus has joined #libreoffice-ru
kompi has joined #libreoffice-ru
<kompi>
mikekaganski: это старость
<mikekaganski>
ага... она самая
<kompi>
зарегаться что ли по другим ником и поддержать нытье убогого
<kompi>
tagezi: ты шаришь же в хтмл
<kompi>
скажи, чего у меня такой здоровый заголовок блога?
<tagezi>
ну
<tagezi>
эм
<tagezi>
аааа, хтмл.. блин, я т проглатил при чтении :))