Читаем CSV...
ну тогда нужно "бить" того кто договаривался.
-----
Ну это либо шеф, либо кто-то из менеджеров, либо кто-то из директоров.
Бум "бить"? Или просто потихоньку доработаю годик и sвалю?
Это слишком общее описание.
------
Мне этого достаточно. Проблема в том, что даже это требование не выполняется.
будешь постоянно править реадер
------
Ну так Я почти это и делаю. Вот пытаюсь пранализировать наиболее типичные ошибки
и скомпоновать один реадер для десятка клиентов - хоть чуть меньше кода надо будет
поддерживать.
Можно еще попытать узнать каким способом они получают присылаемый вам файл?
-----
Насколько Я знаю - у части клиентов есть какая-то внутреняя система заточенная под их задачи.
Из этой их системы и происходит экспорт.
По слухам - прогер у них не постоянный, а под задачу нанимают кого-то.
Ни и он, по его возможностям, изучает что-там-есть и как-его-пользовать и клепает
какой-то экспорт.
Может есть какой то "оригинальный" формат.
-----
Может.
Но если Я буду интересоваться этими деталями - придется влазить глубоко в их систему.
А оно мне надо? Денег то больше не станет...
Если нету конкретной спецификации и формат данных в "плавающем" режиме.
Тут ничего не поделаешь.
У нас поставщики данных поставляют данные в ЦСФ. Формат практически не меняется.
Когда добавляются изменения или совсем новые данные (т. е. новые ЦСФ) просто обновляется версия Schema.sql.
Через конфиг-файл вносится дескриптор изменённой таблицы или новой таблицы и вперёд.
Очень простой процесс. Всё реадер всегда знает что он читает - потому что владеет метаданными.
Но даже если опрераторы долго не задерживаеются - может вынести все "меняющиеся" части из программы (реадера)
в прикладной конфигураторный файл (xml). Чтобы ваш реадер не зависил от "незадерживающихся" операторов.
Т. е. все изменения нужны будут только в конфигурации.
Бум "бить"? Или просто потихоньку доработаю годик и sвалю?
Обязательно, только скобки интерпретировать не так как думаешь.
Просто довести до сведения, что мало того что присылают в не договорном формате, так еще и спецификация документа не определена. Из за этого ты вместо того чтобы делать полезное для предприятия вынужден постоянно корректировать программу чтения данных и при этом еще не факт, что данные интерпретируются как нужно. В итоге может получится что предприятие произведет продукцию не соответствующую потребностям заказчика. Кто будет виноват? - производитель. Желательно еще и по майлу отправить, что бы в случае чего не нашли "крайнего".
Но что то сомнения меня берут что получится через годик свалить, тебе же года два нужно что то искать чтобы подошло
Из этой их системы и происходит экспорт.По слухам - прогер у них не постоянный, а под задачу нанимают кого-то.
похоже это и есть источник всех проблем вкупе с отсутствием документации на формат файла. Каждый новый иф делает новый прогер по своему.
А оно мне надо?
Тут только ты сам можешь решить, но по мне так лучше один раз влезть и забыть, чем каждый раз править реадер.
-----
Они и так лежат в плугинах. Т.е. подстежкой их в программу Я уже не занимаюсь - скомпилил, залил - работает...
Всё реадер всегда знает что он читает - потому что владеет метаданными.
-----
Не думаю, что это мой вариант - не прегдставляю как описать метаданными приведенный выше пример - машину состояний в метаданные запихать можно, но обрабатывающий данные на основании метаданных реадер будет... более сложным, чем имеющийся код. Нее, не хочу...
Т. е. все изменения нужны будут только в конфигурации.
-----
У меня даже в конфигурации изменений нет - есть плугин - работаем, нет - стучим прогеру (мне) по голове...
Должен быть оговорен точный формат данных.
-----
Эээ... как бы это по-проще сказать... наверное так: обе договаривающиеся стороны не знают и не понимают термина "точный формат данных".
Максимум, что можно объяснить - два момента:
1. машиночитаемый файлик - т.е. файлик в одном из "отрытых" форматов (не пдф, хсл и т.п.)
2. какой бы ни был формат - он будет постоянным, т.е. вносить изменения можно только до определенного момента.
И то - проблемно.
Присылают файл - начинаю базовый анализ - т.е. смотрю можно ли хоть как-то извлечь нужные данные.
Читаю - "нужно красивое окно в сортир на третьем этаже". - Марка стекла? Толщина? Размеры? - Ну это мы ПОТОМ добавим, пока работайте так...
В итоге может получится что предприятие произведет продукцию не соответствующую потребностям заказчика. Кто будет виноват?
-----
Абсолютно точноп - "девочка" на набивке данных.
У нее в функциях лежит сравнение подготовленной заявки и реального заказа отправляемого в производство.
И довольно часто, кстати, есть расхождения между спецификацией в ПДФке и ЦСВшкой...
Желательно еще и по майлу отправить, что бы в случае чего не нашли "крайнего".
-----
Так и делается. Только не мною. Прогер Я, а не контактер с клиентами...
тебе же года два нужно что то искать чтобы подошло
-----
Мне уже не надо ничего искать. Через 3 года, даже по последним, 1989 года, изменениям в советских законах, Я уже пенс...
так что только тем что интересно буду зниматься и то - когда здоровье позволит...
по мне так лучше один раз влезть и забыть
-----
Один раз влезешь - потом всю оставшуюся жизнь будешь дорабатывать... потому что "после того как поковырялся у нас не работает"... халяву они тут любят...
Так что ну его нафиг - лучше подрихтовать реадер у себя, чем разгребать накрученное у кого-то...
чем каждый раз править реадер.
-----
Вот потому Я и радуюсь, что у меня отдельный реадер для каждого клиента - даже если полностью меняется формат документа от клиента надо дорабатывать только ограниченное количество кода...
Но унификации на уровне ЦСВ все же хотелось бы...
Абсолютно точноп - "девочка" на набивке данных.
Ну ты вроде не на набивке и не девочка уже
Тогда действительно можно не переживать.
изменениям в советских законах
Не понял. А при чем советские законы к англицкому проживанию?
Ну тогда только хорошего здоровья можно пожелать, год продержаться можно и на таком заводе.
А при чем советские законы к англицкому проживанию?
-----
Да тут по случаю меня лишили латыSSацкого негровства, а в остатке - чистый Гражданин СССР.
Это по определению - негр - гражданин СССР, на момент оппукации латыSSами ЛССР, проживавший на территории ЛССР.
Следствие - через три года бедолагам придется обеспечивать выполнение закона СССР в области пенсионного обеспечения...
Ну по крайней мере - переслать заявку на пенсию в ближайший СОБЕС...
Тогда действительно можно не переживать.
-----
Да Я и не переживаю - Я собираю возможные ошибки в ЦСВ-файлах...
Что еще можно сделать неправильно в экспорте данных в CSV-формате?
На крупных фирмах отчёты делают в специальных прогах. И отчёты получаются красивые. С шапкой, постраничной выдачей, индивидуальным оформлением отдельных страниц, нумерацией и т.д. А потом не заморачиваться и все это экспортируют в CSV. Здесь проблема даже не в том, что формат файла не документирован, а в том, что начальнику завтра отступ в отчёте между шапкой и текстом не понравится и вы получите совсем другой CSV, не как в прошлом месяце.
Поэтому я бы не использовал готовые ридеры, а читал бы файл построчно, валидировпл бы каждую строку и только после этого сам рубил бы ее на данные
получите совсем другой CSV, не как в прошлом месяце.
-----
Одна из проблем. Достаточно регулярная. Не чинится.
Но тут все просто - будет сообщени об несовпадении текущего формата с ожидаемым и девочки будут запрашивать данные в оговоренном/принятом/староm формате.
К ошибкам в ЦСВ файлах, которые можно обработать на нашем конце, отношения не имеет.
Следствие - через три года бедолагам придется обеспечивать выполнение закона СССР
У тебя есть официальное письмо или ты так лично думаешь?
По идее никто не будет выполнять старых законов да и еще СССР.
Я собираю возможные ошибки в ЦСВ-файлах...
КАМАЗ заказал для сбора?
У тебя есть официальное письмо или ты так лично думаешь?
------
У меня есть письмо об том, что меня признали нелегалом.
Нелегалом ныне нельзя признать только и исключительно на территории какой-то страны ЕС - только целиком. Тем самым - снят статус негражданина латиSSатника. Ну а гражданства меня никто никогда не лишал. Местные слегка офигели от своих действий Я с ними готов общаться только в присутствии представителя свой страны. Каждый раз очень стараются убедить в том что от этого надо отказаться и каждый раз не могут предоставить документ об лишении гражданства... :)
У меня есть письмо об том, что меня признали нелегалом.
ну это уже плюс. Хотя и непонятный для меня. Обычно нелегалов выдворяют из страны...
Но всё равно, берут меня большие сомнения, что в Латвии тебе что то светит. Не пробовал просто запрос отправить типа: скажить пож. сколько у мну буде пенсии? Да и сомневаюсь что Латвийская пенсия будет больше англицкой.
Обычно нелегалов выдворяют из страны...
-----
...в страну имеющегося гражданства.
Не пробовал просто запрос отправить типа: скажить пож. сколько у мну буде пенсии?
-----
Два вопроса - Куда? и В качестве кого?
В латиSSатник? Так у меня ЗАПРЕТ на проф.работу. И в качестве нелегала? Ну а почему тогда не в Германию? Там хоть есть резон - происхожу с оккупированной територии...