понедельник, 17 сентября 2018 г.

АЦК-Финансы и буфер обмена

Наблюдение: в дельфи-клиенте АЦК-Финансы 2.27.2.60 при нажатии на кнопку со статусом в окне редактирования документа (например, ЭД 17 класса) появляется сообщение об ошибке:
"Cannot open clipboard."
Помогает следующее:
1) открыть офисное приложение (например, "MS Excel");
2) на панели "Буфер обмена" нажать кнопку "Очистить все";
3) повторить работу с документом.




Примечание:
Аналогичная проблема замечена и для 2.46.0.155. Лечение такое же.

среда, 12 сентября 2018 г.

Java: гадание по стеку ошибки

Пример стека ошибки:
java.text.ParseException: Unparseable date: ""
    at java.text.DateFormat.parse(DateFormat.java:366) ~[na:1.8.0_45]
    at com.bssys.shared.BankUpdateED807Launcher.processRecord(BankUpdateED807Launcher.java:352) [AzkServer.jar:na]
    at com.bssys.shared.BankUpdateED807Launcher.processSingleFile(BankUpdateED807Launcher.java:265) [AzkServer.jar:na]
    at com.bssys.shared.BankUpdateED807Launcher.process(BankUpdateED807Launcher.java:116) [AzkServer.jar:na]
    at com.bssys.shared.BankUpdateED807Launcher.run(BankUpdateED807Launcher.java:95) [AzkServer.jar:na]
    at com.bssys.server.schedule.GenericSchTaskProcessor$1.process(GenericSchTaskProcessor.java:50) [Server.jar:na]
    at com.bssys.server.processor.AbstractProcessor.process(AbstractProcessor.java:90) [Server.jar:na]
    at com.bssys.server.system.XMLProcessor.processElementRes(XMLProcessor.java:123) [Server.jar:na]
    at com.bssys.server.system.TransactJob.process(TransactJob.java:386) [Server.jar:na]
    at com.bssys.server.system.TransactJob.run(TransactJob.java:293) [Server.jar:na]
    at java.lang.Thread.run(Thread.java:745) [na:1.8.0_45]

Пример нахождения проблемной строки в байткоде на примере "luyten" (в меню "Settings" включить режим "Bytecode" и галочку "Show Line Numbers Bytecode"):

Примечание: для данного стека ошибки не удалось найти отражение нужной строки байткода (строки № 352) в режиме просмотра "Java", но и в режиме "Bytcode" информации оказалось достаточно.


Иногда проблемную строку байткода можно увидеть в режиме "Java", вот пример стека ошибки:
java.lang.NullPointerException: null
    at com.bssys.azkserver.sofit.common.expimp.export_fk.doc.zr.ExportZR195.getKbkRcp(ExportZR195.java:162) ~[AzkSofit.jar:na]
    at com.bssys.azkserver.sofit.common.expimp.export_fk.doc.zr.ExportZR195.getZRST(ExportZR195.java:118) ~[AzkSofit.jar:na]

Вот проблемная строка в байткоде в режиме "Java":


Та же проблемная строка в байткоде в режиме "Bytecode":

Архив