Уведомления

Группа в Telegram: @pythonsu

#1 Янв. 11, 2016 22:41:01

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

Puten
добавляется ответ пользователя в список
В своем первом посте я предполагал что При сканировании мы получаем набор полей, после которых вводится перевод строки. У вас сейчас задаются вопросы. Вы ответы на все эти вопросы получаете от сканера? Я подумал что только часть.

Добавлю про мой код. Я предполагаю что тот кто проводит регистрацию запускает скрипт. Он в ответ читает конфигурационный файл, в котором от сканирования к сканированию многие поля не меняются. Если раскомментировать строку # sp.check_call то будет открываться текстовый редактор, в котором мы можете поменять поля а можете и не менять. можно добавить поле - продолжить сканирование и т.п.
После этого в файл регистрации дописывается эта информация.

При таком подходе очевидно не требуется задавать вопросы, надо в текстовом редакторе поправить нужные поля в конфигурационном файле. Я так неоднократно делал, мне это кажется удобнее.

С GUI это надо делать конечно несколько иначе. Но не факт что с GUI будет удобнее.

Puten
Формат “Sat 09 Jan 2016 11:05” подгонял под себя.
Формат времени по возможности должен быть совместим с форматами используемыми в другом ПО которое вы используете.

Например я использую текстовый редактор, тогда мне удобно 2016-01-11 21:01:56 потому что в любом текстовом редакторе есть функция сортировки строк. в таком формате это совпадет с упорядочиванием по времени. Поэтому вы легко можете слить два файла полученных на разных рабочих местах. без проблем найдете нужный день и т.п. Одновременно это родной формат питона, поэтому прочитается без проблем. Очень многие аппаратные устройства выдают или получают временные метки в этом формате просто потому что это ISO стандарт. Если вам нужен день недели запишите его отдельной колонкой.

Посмотрите https://ru.wikipedia.org/wiki/ISO_8601. Люди которые придумывают свои форматы записи времени для меня являются постоянной головной болью, поскольку на каждого такого умника приходится тратить время, для описания способа чтения данных, вместо использования готовых 5-6 стандартных способов.



Отредактировано doza_and (Янв. 11, 2016 22:44:59)

Офлайн

#2 Янв. 11, 2016 22:50:48

Puten
Зарегистрирован: 2016-01-06
Сообщения: 40
Репутация: +  2  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

doza_and
В своем первом посте я предполагал что При сканировании мы получаем набор полей, после которых вводится перевод строки. У вас сейчас задаются вопросы. Вы ответы на все эти вопросы получаете от сканера? Я подумал что только часть.
Нет, высвечивается вопрос и ожидается ввод - сканируем, высвечивается след. вопрос - снова сканером. Т.к. сканер каждый раз завершает ввод Enter'ом, то вопросы появляются сами. На клавиатуре ничего вводить не надо.
doza_and
При таком подходе очевидно не требуется задавать вопросы, надо в текстовом редакторе поправить нужные поля в конфигурационном файле. Я так неоднократно делал, мне это кажется удобнее.
Если сможете более подробно описать или привести рабочий кусок кода, то посмотрю и, возможно, тоже буду так делать. Стаж в 2 месяца не позволяет знать многие тонкости языка, поэтому пользуюсь грубыми техниками.
doza_and
Формат времени по возможности должен быть совместим с форматами используемыми в другом ПО которое вы используете.
Я бы и не придумывал, если бы datetime.datetime.now() в моем случае не выводил время вплоть до наносекунд. Может можно в экселе обрезать, еще не смотрел.
doza_and
С GUI это надо делать конечно несколько иначе. Но не факт что с GUI будет удобнее.
Гуи нужен простейший, чтобы тетенькам из администрации смотреть не на черное окошко (боятся они его), а на обычное, знакомое окошко из windows.

Отредактировано Puten (Янв. 11, 2016 22:53:34)

Офлайн

#3 Янв. 12, 2016 02:47:15

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

Z_M
А в excel добавил ячейку = *N. Плюс готовый поиск, сортировка.
Надо тебе вирус заслать разок, чтобы ты вместо работы весь день протрахался с системой. :D Потому что, судя по рассуждениям, особого опыта с компами у тебя не было. Что такое паралич организации, ты просто не знаешь.
Да и с автоматизацией не знаком, иначе бы знал, что Excel вообще для неё не пригоден, они же там тупые все в этой Microsoft. Если туда и попадает кто-нибудь умный (некоторые программки очень хорошо сделаны), то очень скоро система его выдавливает как чужеродный элемент и всё возвращается на круги своя.

Puten
Код на данный момент:
Слабоватенько, конечно. По идее, надо всё хранить в нормальной базе данных, а для секретарш окно с полями написать (в Qt Creator) или сетевой веб-клиент. И для чтения и распечаток делать экспорт в xls-формат.

Вот у нас в библиотеке в 1998 году была такая система. Там на билетах были штрихкоды, которые тётка на входе через сканер штрихкодов вводила в программу. В программе у неё на компе было окно с набором полей, дальше она редактировала эти поля, на кнопку нажимала и всё это отправлялось в базу данных. А на третьем этаже уже знали, что ты пришёл, потому что там тоже комп, подключённый к этой базе общей. И когда тебе выдавали книгу, её точно так же дописывали к твоим данным и на кнопку нажимали.
Понимаешь? А ты про какие-то консольки, эксель-файлы. Это 98-й год был, сейчас там, походу, всё то же самое работает. Это была библиотека, в которую просто так не войдёшь и уж точно ничего просто так не вынесешь, там каждый чих заносился в базу и тебя могли вспомнить хоть через полгода, хоть через год до мелчайших подробностей. Если ты книжку порвал, тебя просто банили в этой базе, ты приходил, а тебе говорили “вам в доступе отказано”. :)



Отредактировано py.user.next (Янв. 12, 2016 02:48:28)

Офлайн

#4 Янв. 12, 2016 08:45:32

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

Порядок использования понял, подумаю.

Puten
не выводил время вплоть до наносекунд
>> str(datetime.datetime.now().replace(microsecond=0))
'2016-01-12 09:36:28'
Puten
Гуи нужен простейший,
Правильно говорят. Qt,Tk,WEB. У exel есть один недостаток - возможность редактирования таблицы. Для меня этого одного достаточно чтобы от него отказаться.
Я бы выбрал web, поскольку рабочих мест несколько. Судя по вашим словам тетенек много.



Офлайн

#5 Янв. 12, 2016 09:01:29

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

Кстати, данные можно писать в базу данных, а в качестве гуя к ней использовать excel. Подключите к нему свою базу через ODBC/OLE и будет вас прекрасный гуй - поиск. фильтрация, печать, что хотите. И даже OLAP кубы при желании можно сделать.

ЗЫ: Excel это лучшее, что когда-либо делали мелкомягкие



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

#6 Янв. 12, 2016 09:31:24

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

PooH
Excel это лучшее, что когда-либо делали мелкомягкие
Ну, по идее, туда можно гигабайт данных сохранить. В реале я бы даже пробовать не стал такое, потому что опыт показывает, что такой файл если и откроется вообще, то в один прекрасный день навернётся без всякой причины. А формат там бинарный, потом просто не восстановишь ничего.



Офлайн

#7 Янв. 12, 2016 10:32:10

Puten
Зарегистрирован: 2016-01-06
Сообщения: 40
Репутация: +  2  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

py.user.next
Слабоватенько, конечно. По идее, надо всё хранить в нормальной базе данных, а для секретарш окно с полями написать (в Qt Creator) или сетевой веб-клиент. И для чтения и распечаток делать экспорт в xls-формат.
Не спорю. До этого момента, опыта программирования не было вообще (если не считать редких батников).

Проблема не код написать, а проработать алгоритм. Синтаксис-то за пару дней учится, а вот потом, что со всем этим делать - вот где загвоздка.

Может вы и могли после 2х месяцев самообучения уже писать работающий софт, но у меня так не выходит. Время учить есть только по вечерам, когда ребенок уже спит, а после рабочего дня, новые знания так и лезут в голову (*сарказм).
doza_and
Правильно говорят. Qt,Tk,WEB. У exel есть один недостаток - возможность редактирования таблицы. Для меня этого одного достаточно чтобы от него отказаться.
Я бы выбрал web, поскольку рабочих мест несколько. Судя по вашим словам тетенек много.
Qt = PyQt4 / 5, Tk = Tkinter ну и веб сервер с mysql, я правильно расшифровал?
Про эксель, хватит и обычного эскпорта в эксель. Пусть данные храняться где-нибудь, где их нельзя будет изменить, но чтобы можно было сделать экспорт и пусть тетеньки играются с ним.
Тётенек 3 - 5, плюс изредка коллеги может захотят посмотреть, где их посылка.
Есть виртуальная платформа, можно на ней сервачек с БД сделать. Тогда любой в сети сможет зайти на нужную страницу и найти свою посылку. Только опять же, опыта в развертывании этого нету. Какой-нить дебиан/сентос/open suse + mysql ? По докам смогу такое собрать.
Опять же, как сделать ввод данных? Веб + ДБ тогда вообще питон тут не нужен будет или через него будут данные в БД сохраняться, а вывод через веб?

Много вариантов, какой выбрать…

Отредактировано Puten (Янв. 12, 2016 10:32:58)

Офлайн

#8 Янв. 12, 2016 10:32:15

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

py.user.next
А формат там бинарный, потом просто не восстановишь ничего.
Вроде ж простой xml начиная с 2007-го?



Офлайн

#9 Янв. 12, 2016 12:02:40

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10016
Репутация: +  857  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

Puten
Синтаксис-то за пару дней учится
Это если ты программист. Я вот Go учил неделю, и то он просто делался по аналогии с C, который у меня первый. Если же ты сисадмин, то тебе сначала нужно первый язык выучить, а потом уже сможешь синтаксис других языков учить, проводя аналогии с тем, что уже хорошо знаешь, потому что занимался месяцами.

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

Puten
Может вы и могли после 2х месяцев самообучения уже писать работающий софт, но у меня так не выходит. Время учить есть только по вечерам, когда ребенок уже спит, а после рабочего дня, новые знания так и лезут в голову (*сарказм).
Да там материала столько же, сколько в сисадминстве, если не больше. Обычно сисадмины думают “ну, я типа знаю, как админить, сейчас немного синтаксис языка подучу и стану программировать, а значит стану программистом”. А там материала столько же, только к сисадминству он не относится вообще.
Но оно, правда, интереснее, чем сисадминство, потому что программы можешь из ничего делать. А своя программа - это море удовольствия. В своей программе ты никогда не будешь материться, что какая-нибудь кнопка не там, или что чего-то не хватает или что-то лишнее.

Puten
Пусть данные храняться где-нибудь, где их нельзя будет изменить, но чтобы можно было сделать экспорт и пусть тетеньки играются с ним.
Они могут загружать свой эксель-файл с изменениями на сервер через форму, а на сервере он может браться и перегонятся в базу. То есть импорт тоже можно сделать. Например, она может работать в экселе, потом файл сохранить и отправить на сервер. А другие будут сидеть в другом клиенте и увидят эти новые данные.

FishHook
Вроде ж простой xml начиная с 2007-го?
У меня 2003 стоит. Я просто не стал покупать следующие, они же по сути - то же самое. У них есть такая привычка выпускать бета-версию как отдельную версию, а потом от пользователей отзывы принимать и ошибочки быстренько исправлять. Типа вот Vista или 8-ка: Vista - бета-версия 7-ки, а 8-ка - бета-версия 10-ки. То есть такое бесплатное тестирование за счёт пользователей.



Офлайн

#10 Янв. 12, 2016 12:31:21

Puten
Зарегистрирован: 2016-01-06
Сообщения: 40
Репутация: +  2  -
Профиль   Отправить e-mail  

Запись и редактирование данных в excel - Python

py.user.next
Они могут загружать свой эксель-файл с изменениями на сервер через форму
А тут поподробнее. Вот установил себе дебиан8 + mysql + apache. А дальше хз что делать. Апачи страницу показывает, а как через веб к ДБ коннектится (PhpMyAdmin ставить?) и данные вносить?
Могу и погуглить, конечно, но может кто из опыта подскажет, мол “ставь это и то + доки почитай”.

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version