new_year

Форум

Basil

Форум

Дата создания

Выбрать дату в календареВыбрать дату в календаре

Тема

Сообщение

Упорядочить

Выбрать дату в календареВыбрать дату в календаре

Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
Для универсальности, конечно, неплохо бы проверять параметр "кодовая страница", передаваемый в класс при инициализации. Если не 1251 - то можно перекодировок и не делать.[/QUOTE]
Есть ещё такой момент. В текущей схеме класс читает файл, преобразует строки из utf8 в 1251, внутри себя хранит в 1251, при вызовах методов принимает строки в 1251 и только при записи делает обратное преобразование 1251 -> utf8. И если в исходном файле в строке есть символ #A4, при записи он преобразуется в символ рубля, хотя это не требовалось. Решение тут одно - нужно внутри хранить строки в utf8. Так что я повременил бы с добавлением этой функции.
ГИС ЖКХ: Предложения по информационному обмену
 
[QUOTE]Sergey Cheban пишет:
Почему Вы считаете, что это ПО кто-то должен разработать для Вас _бесплатно_? А бесплатное ПО бухучёта Вам, случайно, не нужно?[/QUOTE]
Оно то конечно в целом правильно.. Но вот, к примеру, ФНС уже лет 15 разрабатывает бесплатное ПО для заполнения налоговых деклараций. Или Росстат бесплатно принимает статотчётность через свой сайт сбора. А могли бы и денюшку за всё это попросить.  ;)
Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
Итак: вот архив с двумя функциями, которые вполне могут заменить
strconv(..., 11) и strconv(..., 9).[/QUOTE]
Предлагаешь вставить в класс?
Выкладываю доработанную версию класса. Изменения:
- доработана запись ячеек.
Теперь можно грузить в ГИС. Проверил на загрузке одного ПД - работает.
Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
Убей меня бог - не вижу такой кнопки![/QUOTE]

[QUOTE]AlcorVol пишет:
Кстати, сегодня весь день изучаю, что ты там успел поправить.[/QUOTE]
Твои изменения - размер поля для имён листов и обработка скрытия листов у меня включены. Для сравнения исходников я использую Winmerge (рекомендую):
[quote:3imwlqj1]http://winmerge.org/
WinMerge является Open Source инструментом сравнения и слияния для Windows. WinMerge может сравнивать как файлы, так и папки, отображая различия в визуальной текстовой форме, которые легко понять и обработать.[/quote:3imwlqj1]
Отмечать места правок - когда-то пробовал, не очень удобно. Сейчас мне вполне хватает сравнения исходников.
[QUOTE]AlcorVol пишет:
твои изменения в методе ReadStylesXML (strconv() для "quot;", а также учёт параметра "tint")[/QUOTE]
Кста, не уверен, что сделано до конца правильно (описания-то нет  ;) ) - в Excel цвета видны нормально, а вот в Libre - не все.

[SIZE=85px][COLOR=greenpt]Отправлено спустя 7 минуты 5 секунды:[/COLOR][/SIZE]
[QUOTE]AlcorVol пишет:
Прекрасно! Но где-то при этом должно быть указано, что этот $ в спецификации формата должен выглядеть на экране как знак рубля (а не доллара, фунта, евро, тугрика etc...)[/QUOTE]
Думаю, это зависит от локализации операционки, а $ - просто знак валюты.
[QUOTE]AlcorVol пишет:
А если в следующих версиях им придёт в голову "₽" вместо этого поставить? Чё делать будем?  ;)[/QUOTE]
Будем решать вопросы по мере их поступления.  ;)
Средства работы с XLSX-файлами
 
[QUOTE]two_oceans пишет:
Из того, что бросилось в глаза - импортируется Sleep[/QUOTE]
Со sleep там проблем нет - он используется однократно при распаковке/упаковке Zip.
[QUOTE]AlcorVol пишет:
Я не нашёл таких средств в меню Class Browser'а...[/QUOTE]
Нужно в окне Class Browser'а после открытия класса нажать кнопку "view class code". По стилю - я тоже начинал с fpd20 и часто использую процедурный.
[QUOTE]AlcorVol пишет:
Насчёт знака рубля (₽) я просто хотел сказать, что если он вдруг где-то попадётся, то обрабатывать его придётся особым образом[/QUOTE]
Кста, я посмотрел - в Excel знак рубля реализован. В формате ячейки при этом пишется знак доллара $, так что проблем не будет.

Выкладываю доработанную версию класса. Изменения:
- исправлено/восстановлено чтение формата ячеек.
- исправлена ошибка, приводившая к увеличению размера файла.
Средства работы с XLSX-файлами
 
[QUOTE]two_oceans пишет:
но скорее откажусь от xlsx в пользу xls, чем перееду с привычного офиса.[/QUOTE]
Имелся в виду именно пакет совместимости. Я тоже использую office XP. А файлы docx/xlsx как вариант открываю в Libre и сохраняю в формате 97-2003.
Пресловутый подогрев воды
 
[QUOTE]two_oceans пишет:
Готов допустить, что система закрытая - вдруг действительно пар подают.[/QUOTE]
Немного не так. Открытая система, это когда ГВ получается путём смешивания теплоносителя и ХВ. А закрытая - это когда ХВ в бойлере нагревают теплоносителем.
Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
А где это всё в XLSX-файле находится?[/QUOTE]
А я пока и сам толком не знаю (нужно всё-таки поискать описание формата xlxs). Думаю, нужно начинать с файла со стилями.
[QUOTE]AlcorVol пишет:
 И ещё любопытно: в ГИС-овских шаблонах - там уже новоиспечённый перечёркнутый знак "Р" используется?[/QUOTE]
Нет. Там примерно так: #,##0.00"р."
[QUOTE]AlcorVol пишет:
 Какие методы правил?[/QUOTE]
В основном, ReadStylesXML и WriteStylesXML. Я не очень люблю VCX, поэтому перекинул класс в PRG, инструкция по подключению - в архиве.
[QUOTE]AlcorVol пишет:
Попробуем "малой кровью" обойтись, не усложняя проблем. Не такой уж мегапроект.[/QUOTE]
Я тоже так думаю.  ;)
[QUOTE]two_oceans пишет:
Дома у меня стоит Office XP с пакетом совместимости[/QUOTE]
Мне этот пакет не очень нравится, когда-то были проблемы с открытием xlsx. Думаю, проще использовать Libre.
Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
(Василий?)  ;)[/QUOTE]
Нет. Просто Basil  ;)
[QUOTE]AlcorVol пишет:
Поясни ещё, пожалуйста, чуть подробнее, что именно там не так.[/QUOTE]
Там пока в этой части всё не так. В шаблоне, например, колонка тарифов в денежном формате, колонки с объемами - с 6-ю знаками после запятой. Всё это слетает.
[QUOTE]AlcorVol пишет:
Очень буду удивлён, если выяснится, что читают в очках с цветными стёклами...[/QUOTE]
От них всего можно ожидать.  ;) Кста, цвета я тоже восстановил, там и чтение и вывод были не совсем корректно сделаны. Могу выложить здесь или на мыло прислать.
Средства работы с XLSX-файлами
 
[QUOTE]AlcorVol пишет:
Возможно, и так. Но я тогда не совсем понимаю смысл всех этих полей с заголовками типа:
"(РАССЧИТАНО ГИС ЖКХ)"[/QUOTE]
Они считают на своей стороне (после загрузки) и пишут в файл с результатами загрузки.
[QUOTE]AlcorVol пишет:
Русские заголовки в сохранённом файле не читаются правильно. Видно, что кодировка двухбайтовая (как для UТF-8), но воспринимается как однобайтовая - какая-то европейская с диакритиками.[/QUOTE]
Для починки кириллицы нужно в методе ReadSharedStringsXML перед записью в xl_strings вставить строку:
lcText = strconv(lcText, 11)
Осталось разобраться с форматами ячеек.
Средства работы с XLSX-файлами
 
[QUOTE]two_oceans пишет:
на самом деле Эксель не устанавливает свойства каждой ячейки, а создает стиль ячейки и цепляет к нему список ячеек[/QUOTE]
Там даже есть файлик styles.xml  ;) Пример отправил.
[QUOTE]AlcorVol пишет:
Кириллица должна лечиться преобразованием в UTF-8.[/QUOTE]
Я тоже так думаю. Но это нужно делать прямо в классе.
[QUOTE]AlcorVol пишет:
Не знаю, как насчёт форматов, но цвета, надеюсь, не очень важны для загрузки. (В инструкциях сказано, что нельзя менять формулы.)
[/QUOTE]
Сложно сказать, важны или нет. Мы ж не знаем, как они читают эти шаблоны.
[QUOTE]AlcorVol пишет:
А формулы, между прочим, в шаблоне ПД как раз должны быть.[/QUOTE]
Формул там нет (а нафига они нужны в данном случае). Есть только списки.
Средства работы с XLSX-файлами
 
В данном случае формул там нет. На скрытом листе хранится номер версии шаблона. Проблемы другого плана:
1. неверно читается кириллица, соответственно при сохранении вместо неё - мусор.
2. слетают форматы ячеек.
3. меняются цвета заливки ячеек - шапки таблиц становятся черно/синими.
4. скрытые листы становятся видимыми.
Нужно поковырять этот класс - скорее всего, всё это удастся поправить.
ГИС ЖКХ: квитирование
 
[QUOTE]Programmer пишет:
За счет количества знаков после запятой в объемах начисления ГИС могут рвать с нашими на +-2 копейки.[/QUOTE]
Я, когда столкнулся с этим безобразием, стал в шаблоне заполнять суммы "итого к оплате". При размещении на сообщение о том, что в таких-то ПД суммы не равны рассчитанным говорю - всё правильно. И после этого все размещенные ПД бьют с моими данными копейка в копейку.
Средства работы с XLSX-файлами
 
Там проблема не в самой записи, а в том, что в шаблонах есть скрытые листы, списки и т.п. и всё это некорректно сохраняется. То есть, если даже шаблон просто открыть и сохранить, ничего не меняя, результат будет плачевным. Пример отправил.
ГИС ЖКХ: Предложения по информационному обмену
 
[QUOTE]AlcorVol пишет:
Прекрасный повод перейти на "ты"!  :D Но до получения согласия воздержусь.[/QUOTE]
Не вопрос.  ;)
[QUOTE]AlcorVol пишет:
Интересно, использовали ли тот же проект ([URL=https://vfpx.codeplex.com/wikipage?title=XLSXWorkbook]https://vfpx.codeplex.com/wikipage?title=XLSXWorkbook[/URL]), что и я осваиваю сейчас?[/QUOTE]
Нет, я по старинке: createobject('excel.application')
А с этим проектом скорее всего не получится. Я его попробовал: открыл шаблон ПД, заполнил одну ячейку и сохранил. После этого данный шаблон в excel открывается с ошибками.
ГИС ЖКХ: Предложения по информационному обмену
 
[QUOTE]AlcorVol пишет:
Какими средствами? В какой среде программируете?[/QUOTE]
Как и Вы, пишу на фоксе.
[QUOTE]AlcorVol пишет:
Загружались ПД? Правильно ли я понимаю, что если в доме 200 квартир, то загружать нужно 20-тью кусками?..  :([/QUOTE]
Да, ПД. У меня не было сильного желания экспериментировать, да и ситуация когда-то должна исправиться (август и сентябрь по всем домам загружались с первого раза одним файлом). После первой неудачной попытки попробовал 15 ЛС  - не загрузились, после этого порезал по 10.

По поводу информационного обмена с ГИС.
Как уже говорилось, возможны два варианта:
- внешний ("интеграция") . По сути, они заставили массу независимых разработчиков разрабатывать однотипные системы. Правильнее им самим один раз разработать и выложить в свободный доступ.
- внутренний ("шаблоны"). вполне можно было бы обеспечить поддержку не одного формата, а нескольких (XML, DBF, CSV и т.п.) .
И оба варианта вполне могут сосуществовать параллельно.
ГИС ЖКХ: Предложения по информационному обмену
 
[QUOTE]AlcorVol пишет:
Техподдержка упорно повторяет, что заполнять нужно всё только в MS Excel руками - и никак иначе! И в этом - ещё одна странность. Предположим, однако, что мы с этой проблемой как-то справились и заполнили XLSX-файлы по шаблону автоматически, из программы. Почему они загружаются с такой скоростью, что ответа иногда приходится ждать часами и сутками?[/QUOTE]
В техподдержке не сидят разработчики - поэтому и говорят всякую чушь. Я заполняю шаблоны программно. Кста, нужно попробовать заполнение в Libre.
По поводу скорости. Начал грузить ПД с августа. Дома по 60/90 квартир. Время загрузки одного файла занимало не более 2 минут. Правда, сейчас - отдельная песня. Вчера грузил октябрь, обработка полного файла выдала любимую системную ошибку. Порезал на куски по 10 ЛС. Всё загрузилось, каждый кусок грузился секунд 30. Так что тут дело уже не в формате, а в том, что ВСЯ ГИС последний месяц (а может и больше) работает, мягко говоря, нестабильно.
[QUOTE]AlcorVol пишет:
Если так, то почему вообще был выбран такой странный, громоздкий формат данных, как XLSX?[/QUOTE]
Мне кажется, что они рассматривали загрузку шаблонами как временное решение, и теперь сами дико удивляются, почему многие желают пользоваться только шаблонами.  ;)
ГИС ЖКХ: квитирование
 
[QUOTE]AlcorVol пишет:

Да, согласен. Ну, и итоговое сальдо расчётов ещё.[/QUOTE]
А с сальдо ничего не выйдет. Для сальдо нужен биллинг, а биллинга в ГИС не будет.   ;)
ГИС ЖКХ: квитирование
 
[QUOTE]AlcorVol пишет:
И - Вы не поверите! - никогда никто не протестовал. Ни плательщики, ни получатели.
[/QUOTE]
Я поверю. Но, мне такой подход не нравится в первую очередь тем, что, например, по данным плательщика долг за январь, февраль и апрель, а по моим данным - за половину мая, июнь, июль, август, сентябрь (тк оплата зимой выше, чем летом, не будет совпадать даже количество неоплаченных месяцев).

[QUOTE]AlcorVol пишет:
Кстати, а куда Вы переплату деваете?  :)
[/QUOTE]
Если оплата не равна начислению, разница запоминается и вставляется отдельной строкой (с соответствующим знаком) в очередной ПД. Естественно, переплата учитывается в пределах суммы этого ПД, превышение (если есть) переносится на следующие периоды. А недоплата - в полном объеме.

[QUOTE]AlcorVol пишет:
И как поступите, если сегодня Вам поступила оплата за пол-января и пол-июня?
[/QUOTE]
У меня такого практически никогда не бывает, а если будет - по той же методике. Хотя в особо сложных случаях можно обработать вручную.

[QUOTE]AlcorVol пишет:
Или за март, который уже полностью оплачен?
[/QUOTE]
А тут нужно смотреть, есть ли долги за другие месяцы. Если есть - платеж можно отнести к любому другому периоду (например, самому старому), если нет - это будет авансовый платеж в явном виде. А дальше - по той же методике.

В принципе, у меня в 99% случаев оплата равна начислению, расхождения обычно бывают при оплате налом через терминалы Сбербанка.

Теперь касательно квитирования. Я посмотрел все семинары Ланита, выложенные на ютубе и всё равно не могу понять, чего же они хотят добиться.
С одной стороны, они постоянно говорят, что это не будет биллингом.
С другой стороны, любой отдельно взятый ПД может иметь три состояния - 1.неоплачен, 2.оплачен частично и 3.оплачен полностью. Переход от состояния 1 к состоянию 3 может длиться бесконечно долго, и они не смогли внятно ответить на заданные по этому поводу вопросы.

Если же посмотреть со стороны собственника, мне вполне достаточно было бы видеть в своём ЛК физ.лица выставленные начисления и информацию от банков о поступившей оплате. Без всяких квитирований.   ;)
ГИС ЖКХ: квитирование
 
[QUOTE]AlcorVol пишет:
Там всё [B][U]очень[/U][/B] нелинейно теперь. Заранее сказать просто невозможно, какой ПД в этом смысле "выгоднее" закрывать прежде всего.[/QUOTE]
Ну почему невозможно. Есть три периода, со ставками 0, 1/300 и 1/130. Потребителю выгодно оплачивать ПД самых старых периодов, а УО/РСО в свою очередь (если они хотят собрать пени побольше) - закрывать самые последние периоды. Хотя лично я считаю, что так делать некрасиво и всегда закрываю именно те периоды, за которые платит потребитель.
ГИС ЖКХ: квитирование
 
А я вообще не могу понять, как посмотреть сведения о платежах, которые загружают ко мне банки и которые я должен квитировать.
К примеру, загрузил ПД за сентябрь. Через какое-то время у некоторых ПД появилась информация об оплате. Что, собственно, соответствует действительности и из чего я делаю вывод, что банки в мой адрес инфу грузят.
Захожу в режим "квитирование", а там пусто.
#
[QUOTE]AlcorVol пишет:
Для универсальности, конечно, неплохо бы проверять параметр "кодовая страница", передаваемый в класс при инициализации. Если не 1251 - то можно перекодировок и не делать.[/QUOTE]
Есть ещё такой момент. В текущей схеме класс читает файл, преобразует строки из utf8 в 1251, внутри себя хранит в 1251, при вызовах методов принимает строки в 1251 и только при записи делает обратное преобразование 1251 -> utf8. И если в исходном файле в строке есть символ #A4, при записи он преобразуется в символ рубля, хотя это не требовалось. Решение тут одно - нужно внутри хранить строки в utf8. Так что я повременил бы с добавлением этой функции.
#
[QUOTE]Sergey Cheban пишет:
Почему Вы считаете, что это ПО кто-то должен разработать для Вас _бесплатно_? А бесплатное ПО бухучёта Вам, случайно, не нужно?[/QUOTE]
Оно то конечно в целом правильно.. Но вот, к примеру, ФНС уже лет 15 разрабатывает бесплатное ПО для заполнения налоговых деклараций. Или Росстат бесплатно принимает статотчётность через свой сайт сбора. А могли бы и денюшку за всё это попросить.  ;)
#
[QUOTE]AlcorVol пишет:
Итак: вот архив с двумя функциями, которые вполне могут заменить
strconv(..., 11) и strconv(..., 9).[/QUOTE]
Предлагаешь вставить в класс?
Выкладываю доработанную версию класса. Изменения:
- доработана запись ячеек.
Теперь можно грузить в ГИС. Проверил на загрузке одного ПД - работает.
#
[QUOTE]AlcorVol пишет:
Убей меня бог - не вижу такой кнопки![/QUOTE]

[QUOTE]AlcorVol пишет:
Кстати, сегодня весь день изучаю, что ты там успел поправить.[/QUOTE]
Твои изменения - размер поля для имён листов и обработка скрытия листов у меня включены. Для сравнения исходников я использую Winmerge (рекомендую):
[quote:3imwlqj1]http://winmerge.org/
WinMerge является Open Source инструментом сравнения и слияния для Windows. WinMerge может сравнивать как файлы, так и папки, отображая различия в визуальной текстовой форме, которые легко понять и обработать.[/quote:3imwlqj1]
Отмечать места правок - когда-то пробовал, не очень удобно. Сейчас мне вполне хватает сравнения исходников.
[QUOTE]AlcorVol пишет:
твои изменения в методе ReadStylesXML (strconv() для "quot;", а также учёт параметра "tint")[/QUOTE]
Кста, не уверен, что сделано до конца правильно (описания-то нет  ;) ) - в Excel цвета видны нормально, а вот в Libre - не все.

[SIZE=85px][COLOR=greenpt]Отправлено спустя 7 минуты 5 секунды:[/COLOR][/SIZE]
[QUOTE]AlcorVol пишет:
Прекрасно! Но где-то при этом должно быть указано, что этот $ в спецификации формата должен выглядеть на экране как знак рубля (а не доллара, фунта, евро, тугрика etc...)[/QUOTE]
Думаю, это зависит от локализации операционки, а $ - просто знак валюты.
[QUOTE]AlcorVol пишет:
А если в следующих версиях им придёт в голову "₽" вместо этого поставить? Чё делать будем?  ;)[/QUOTE]
Будем решать вопросы по мере их поступления.  ;)
#
[QUOTE]two_oceans пишет:
Из того, что бросилось в глаза - импортируется Sleep[/QUOTE]
Со sleep там проблем нет - он используется однократно при распаковке/упаковке Zip.
[QUOTE]AlcorVol пишет:
Я не нашёл таких средств в меню Class Browser'а...[/QUOTE]
Нужно в окне Class Browser'а после открытия класса нажать кнопку "view class code". По стилю - я тоже начинал с fpd20 и часто использую процедурный.
[QUOTE]AlcorVol пишет:
Насчёт знака рубля (₽) я просто хотел сказать, что если он вдруг где-то попадётся, то обрабатывать его придётся особым образом[/QUOTE]
Кста, я посмотрел - в Excel знак рубля реализован. В формате ячейки при этом пишется знак доллара $, так что проблем не будет.

Выкладываю доработанную версию класса. Изменения:
- исправлено/восстановлено чтение формата ячеек.
- исправлена ошибка, приводившая к увеличению размера файла.
#
[QUOTE]two_oceans пишет:
но скорее откажусь от xlsx в пользу xls, чем перееду с привычного офиса.[/QUOTE]
Имелся в виду именно пакет совместимости. Я тоже использую office XP. А файлы docx/xlsx как вариант открываю в Libre и сохраняю в формате 97-2003.
#
[QUOTE]two_oceans пишет:
Готов допустить, что система закрытая - вдруг действительно пар подают.[/QUOTE]
Немного не так. Открытая система, это когда ГВ получается путём смешивания теплоносителя и ХВ. А закрытая - это когда ХВ в бойлере нагревают теплоносителем.
#
[QUOTE]AlcorVol пишет:
А где это всё в XLSX-файле находится?[/QUOTE]
А я пока и сам толком не знаю (нужно всё-таки поискать описание формата xlxs). Думаю, нужно начинать с файла со стилями.
[QUOTE]AlcorVol пишет:
 И ещё любопытно: в ГИС-овских шаблонах - там уже новоиспечённый перечёркнутый знак "Р" используется?[/QUOTE]
Нет. Там примерно так: #,##0.00"р."
[QUOTE]AlcorVol пишет:
 Какие методы правил?[/QUOTE]
В основном, ReadStylesXML и WriteStylesXML. Я не очень люблю VCX, поэтому перекинул класс в PRG, инструкция по подключению - в архиве.
[QUOTE]AlcorVol пишет:
Попробуем "малой кровью" обойтись, не усложняя проблем. Не такой уж мегапроект.[/QUOTE]
Я тоже так думаю.  ;)
[QUOTE]two_oceans пишет:
Дома у меня стоит Office XP с пакетом совместимости[/QUOTE]
Мне этот пакет не очень нравится, когда-то были проблемы с открытием xlsx. Думаю, проще использовать Libre.
#
[QUOTE]AlcorVol пишет:
(Василий?)  ;)[/QUOTE]
Нет. Просто Basil  ;)
[QUOTE]AlcorVol пишет:
Поясни ещё, пожалуйста, чуть подробнее, что именно там не так.[/QUOTE]
Там пока в этой части всё не так. В шаблоне, например, колонка тарифов в денежном формате, колонки с объемами - с 6-ю знаками после запятой. Всё это слетает.
[QUOTE]AlcorVol пишет:
Очень буду удивлён, если выяснится, что читают в очках с цветными стёклами...[/QUOTE]
От них всего можно ожидать.  ;) Кста, цвета я тоже восстановил, там и чтение и вывод были не совсем корректно сделаны. Могу выложить здесь или на мыло прислать.
#
[QUOTE]AlcorVol пишет:
Возможно, и так. Но я тогда не совсем понимаю смысл всех этих полей с заголовками типа:
"(РАССЧИТАНО ГИС ЖКХ)"[/QUOTE]
Они считают на своей стороне (после загрузки) и пишут в файл с результатами загрузки.
[QUOTE]AlcorVol пишет:
Русские заголовки в сохранённом файле не читаются правильно. Видно, что кодировка двухбайтовая (как для UТF-8), но воспринимается как однобайтовая - какая-то европейская с диакритиками.[/QUOTE]
Для починки кириллицы нужно в методе ReadSharedStringsXML перед записью в xl_strings вставить строку:
lcText = strconv(lcText, 11)
Осталось разобраться с форматами ячеек.
#
[QUOTE]two_oceans пишет:
на самом деле Эксель не устанавливает свойства каждой ячейки, а создает стиль ячейки и цепляет к нему список ячеек[/QUOTE]
Там даже есть файлик styles.xml  ;) Пример отправил.
[QUOTE]AlcorVol пишет:
Кириллица должна лечиться преобразованием в UTF-8.[/QUOTE]
Я тоже так думаю. Но это нужно делать прямо в классе.
[QUOTE]AlcorVol пишет:
Не знаю, как насчёт форматов, но цвета, надеюсь, не очень важны для загрузки. (В инструкциях сказано, что нельзя менять формулы.)
[/QUOTE]
Сложно сказать, важны или нет. Мы ж не знаем, как они читают эти шаблоны.
[QUOTE]AlcorVol пишет:
А формулы, между прочим, в шаблоне ПД как раз должны быть.[/QUOTE]
Формул там нет (а нафига они нужны в данном случае). Есть только списки.
#
В данном случае формул там нет. На скрытом листе хранится номер версии шаблона. Проблемы другого плана:
1. неверно читается кириллица, соответственно при сохранении вместо неё - мусор.
2. слетают форматы ячеек.
3. меняются цвета заливки ячеек - шапки таблиц становятся черно/синими.
4. скрытые листы становятся видимыми.
Нужно поковырять этот класс - скорее всего, всё это удастся поправить.
#
[QUOTE]Programmer пишет:
За счет количества знаков после запятой в объемах начисления ГИС могут рвать с нашими на +-2 копейки.[/QUOTE]
Я, когда столкнулся с этим безобразием, стал в шаблоне заполнять суммы "итого к оплате". При размещении на сообщение о том, что в таких-то ПД суммы не равны рассчитанным говорю - всё правильно. И после этого все размещенные ПД бьют с моими данными копейка в копейку.
#
Там проблема не в самой записи, а в том, что в шаблонах есть скрытые листы, списки и т.п. и всё это некорректно сохраняется. То есть, если даже шаблон просто открыть и сохранить, ничего не меняя, результат будет плачевным. Пример отправил.
#
[QUOTE]AlcorVol пишет:
Прекрасный повод перейти на "ты"!  :D Но до получения согласия воздержусь.[/QUOTE]
Не вопрос.  ;)
[QUOTE]AlcorVol пишет:
Интересно, использовали ли тот же проект ([URL=https://vfpx.codeplex.com/wikipage?title=XLSXWorkbook]https://vfpx.codeplex.com/wikipage?title=XLSXWorkbook[/URL]), что и я осваиваю сейчас?[/QUOTE]
Нет, я по старинке: createobject('excel.application')
А с этим проектом скорее всего не получится. Я его попробовал: открыл шаблон ПД, заполнил одну ячейку и сохранил. После этого данный шаблон в excel открывается с ошибками.
#
[QUOTE]AlcorVol пишет:
Какими средствами? В какой среде программируете?[/QUOTE]
Как и Вы, пишу на фоксе.
[QUOTE]AlcorVol пишет:
Загружались ПД? Правильно ли я понимаю, что если в доме 200 квартир, то загружать нужно 20-тью кусками?..  :([/QUOTE]
Да, ПД. У меня не было сильного желания экспериментировать, да и ситуация когда-то должна исправиться (август и сентябрь по всем домам загружались с первого раза одним файлом). После первой неудачной попытки попробовал 15 ЛС  - не загрузились, после этого порезал по 10.

По поводу информационного обмена с ГИС.
Как уже говорилось, возможны два варианта:
- внешний ("интеграция") . По сути, они заставили массу независимых разработчиков разрабатывать однотипные системы. Правильнее им самим один раз разработать и выложить в свободный доступ.
- внутренний ("шаблоны"). вполне можно было бы обеспечить поддержку не одного формата, а нескольких (XML, DBF, CSV и т.п.) .
И оба варианта вполне могут сосуществовать параллельно.
#
[QUOTE]AlcorVol пишет:
Техподдержка упорно повторяет, что заполнять нужно всё только в MS Excel руками - и никак иначе! И в этом - ещё одна странность. Предположим, однако, что мы с этой проблемой как-то справились и заполнили XLSX-файлы по шаблону автоматически, из программы. Почему они загружаются с такой скоростью, что ответа иногда приходится ждать часами и сутками?[/QUOTE]
В техподдержке не сидят разработчики - поэтому и говорят всякую чушь. Я заполняю шаблоны программно. Кста, нужно попробовать заполнение в Libre.
По поводу скорости. Начал грузить ПД с августа. Дома по 60/90 квартир. Время загрузки одного файла занимало не более 2 минут. Правда, сейчас - отдельная песня. Вчера грузил октябрь, обработка полного файла выдала любимую системную ошибку. Порезал на куски по 10 ЛС. Всё загрузилось, каждый кусок грузился секунд 30. Так что тут дело уже не в формате, а в том, что ВСЯ ГИС последний месяц (а может и больше) работает, мягко говоря, нестабильно.
[QUOTE]AlcorVol пишет:
Если так, то почему вообще был выбран такой странный, громоздкий формат данных, как XLSX?[/QUOTE]
Мне кажется, что они рассматривали загрузку шаблонами как временное решение, и теперь сами дико удивляются, почему многие желают пользоваться только шаблонами.  ;)
#
[QUOTE]AlcorVol пишет:

Да, согласен. Ну, и итоговое сальдо расчётов ещё.[/QUOTE]
А с сальдо ничего не выйдет. Для сальдо нужен биллинг, а биллинга в ГИС не будет.   ;)
#
[QUOTE]AlcorVol пишет:
И - Вы не поверите! - никогда никто не протестовал. Ни плательщики, ни получатели.
[/QUOTE]
Я поверю. Но, мне такой подход не нравится в первую очередь тем, что, например, по данным плательщика долг за январь, февраль и апрель, а по моим данным - за половину мая, июнь, июль, август, сентябрь (тк оплата зимой выше, чем летом, не будет совпадать даже количество неоплаченных месяцев).

[QUOTE]AlcorVol пишет:
Кстати, а куда Вы переплату деваете?  :)
[/QUOTE]
Если оплата не равна начислению, разница запоминается и вставляется отдельной строкой (с соответствующим знаком) в очередной ПД. Естественно, переплата учитывается в пределах суммы этого ПД, превышение (если есть) переносится на следующие периоды. А недоплата - в полном объеме.

[QUOTE]AlcorVol пишет:
И как поступите, если сегодня Вам поступила оплата за пол-января и пол-июня?
[/QUOTE]
У меня такого практически никогда не бывает, а если будет - по той же методике. Хотя в особо сложных случаях можно обработать вручную.

[QUOTE]AlcorVol пишет:
Или за март, который уже полностью оплачен?
[/QUOTE]
А тут нужно смотреть, есть ли долги за другие месяцы. Если есть - платеж можно отнести к любому другому периоду (например, самому старому), если нет - это будет авансовый платеж в явном виде. А дальше - по той же методике.

В принципе, у меня в 99% случаев оплата равна начислению, расхождения обычно бывают при оплате налом через терминалы Сбербанка.

Теперь касательно квитирования. Я посмотрел все семинары Ланита, выложенные на ютубе и всё равно не могу понять, чего же они хотят добиться.
С одной стороны, они постоянно говорят, что это не будет биллингом.
С другой стороны, любой отдельно взятый ПД может иметь три состояния - 1.неоплачен, 2.оплачен частично и 3.оплачен полностью. Переход от состояния 1 к состоянию 3 может длиться бесконечно долго, и они не смогли внятно ответить на заданные по этому поводу вопросы.

Если же посмотреть со стороны собственника, мне вполне достаточно было бы видеть в своём ЛК физ.лица выставленные начисления и информацию от банков о поступившей оплате. Без всяких квитирований.   ;)
#
[QUOTE]AlcorVol пишет:
Там всё [B][U]очень[/U][/B] нелинейно теперь. Заранее сказать просто невозможно, какой ПД в этом смысле "выгоднее" закрывать прежде всего.[/QUOTE]
Ну почему невозможно. Есть три периода, со ставками 0, 1/300 и 1/130. Потребителю выгодно оплачивать ПД самых старых периодов, а УО/РСО в свою очередь (если они хотят собрать пени побольше) - закрывать самые последние периоды. Хотя лично я считаю, что так делать некрасиво и всегда закрываю именно те периоды, за которые платит потребитель.
#
А я вообще не могу понять, как посмотреть сведения о платежах, которые загружают ко мне банки и которые я должен квитировать.
К примеру, загрузил ПД за сентябрь. Через какое-то время у некоторых ПД появилась информация об оплате. Что, собственно, соответствует действительности и из чего я делаю вывод, что банки в мой адрес инфу грузят.
Захожу в режим "квитирование", а там пусто.

Для улучшения работы сайта и его взаимодействие с пользователями мы используем файлы cookie. Продолжая пользоваться сайтом, вы соглашаетесь с использованием файлов cookie. Вы всегда можете отключить файлы cookie в настройках браузера.

Подпишись на рассылку новостей ЖКХ, а также наших статей!

Спасибо, вы успешно подписались на рассылку!