Автор Гілка: Заповнювач облікової картки  (Прочитано 14287 раз)

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Розробив програмку для заповнення облікових карток - вивішую на загальний огляд.
В принципі, інетом такі програми вештаються. Вмене одна така була - видалив, бо здалась мені екзешка під лінем - жодного разу навіть не запустив.
Власне, навіщо вона мені була треба, коли в мене був свій варіант написаний на Python з використанням PyGTK. Цього разу взявся за вивчення wxPython от з його використанням написав прикріплену версію форморобки.
Використання:
розпаковуєм, переконуємось в тому, що в сисчтемі встановлено wxPython (в червонобрилих пакет так і називається: wxPython)
запускаємо командою: python formmaker.py
Що до останнього пункту - пожартував  ;) вочевидь поважне панство саме здогадається як запускати пітонівський скрипт, тим більше, що на носі рік Пітона  8-)
Супроводжуюча парочка текстових файлів - данні - без них скрипт має, по ідеї вивалитись (не перевіряв  ;) )
Скрипт дещо "проглюкує" при перемикані між формами відхиленої та захищеної дисертацій, але при зміні розміру вікна - глюк зникає. Втім, це рідний глюк реалізації wxPython, що в мене на компі - може в когось і не зглючить. Вимагає забагато совати мишкою - найближчим часом розберусь як здихатись цієї особливості.
Перевагою даного скрипта над віндузятними аналогами є можливість створеня облікової картки відхиленої дисертації  ;)
Недолік - файл зберігається в форматі csv з табуляціями.
При потребі можна запускати і під пропрієтарною ОС, тільки треба встановити додаткове ВПЗ з  http://www.python.org/download/ та http://www.wxpython.org/download.php#stable по черзі.
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #1 : 2012-12-14 15:57:17 »
Трішки вдосконалив скрипт та дані.
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній yurchor

  • Видавець
  • *******
  • дописів: 3628
  • Карма: +2/-0
  • Grateful for our Iron Lung
    • Вікі користувачів KDE
Re: Заповнювач облікової картки
« Відповідей #2 : 2012-12-15 10:33:54 »
За що ви не любите Жмеринку?
Denounce the demagogues
King diamonds to discard
Deploy the dialogue
Your word against the law

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #3 : 2012-12-15 12:11:14 »
Off-topic:
За що ви не любите Жмеринку?
Так її називають в честь наявності рейсу Жмеринка-Москва  :D
І знову вихід в світ нових покращень  ;)
Тепер скрипт має можливість зберігати файли в ODF (ods).
Для реазації цієї можливості потрібно встановити lpOD (http://lpod-project.org/get-the-code) в репозиторії Федори поки його не бачив - затягнув з офсайту. Розмір того архіву складає символічні 1.4 метра. Останнє оновлення - вересень цього року -  проект живий і процвітаючий  :) проте, документація в нього кульгає. Довелось помучитись, щоб варіант написаний за старою версією документації запрацював з найновішою версією lpOD (1.1.0).

Edit:
Вирішив не соромитись тим кодом, що був - виправив, щоб pylint якомога менше лаявся. Втім... всеодно лається  ::)
Глюк, який був - приправ - таки він був від програміста, а не від API  :P
Код з даними в архіві поміщені в папку (для зручності при користуванні).
Прибрано якусь ваду, яку крім мене ніхто і не бачив  ;)
« Змінено: 2012-12-16 20:22:28 від serg_ik »
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній Олександр Барановський

  • Модератор дошки
  • Графоман
  • *****
  • дописів: 359
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #4 : 2012-12-17 00:12:07 »
Чудова ідея!!!

Правда, я подумав, що йдеться про так звану ОКД (для УкрІНТЕІ), коли прочитав тему. Завжди «дивуюся», коли доводиться користуватися спеціальною програмою для її заповнення. І думаю: треба зробити це якось по-людськи. Але якби я робив, то це було б щось засобами TeX. Так, щоб брати інформацію безпосередньо з файла дисертації, доповнювати, чим треба, і генерувати новий TeX-файл (чи текстовий файл, чи csv-файл).

До речі, щодо цих облікових карток, ще ж треба текст, у якому та сама інформація перемішана з різними словами (рішення ради). Це можна зробити? (Я з пітонами не дружу, тому скрипт поки що не зміг запустити. З написаного не зрозумів.)

Ну, й генерування інших всяких форм реалізувати можливо?

Недолік - файл зберігається в форматі csv з табуляціями.
Оскільки для ВАК/ДАК потрібен файл file.xls, все одно доведеться чимось відкривати й у відповідному форматі зберігати. Тому ок.

Перевагою даного скрипта над віндузятними аналогами є можливість створеня облікової картки відхиленої дисертації  ;)
Сумнівна перевага, як на мене. Хіба це комусь потрібно? :-)
У своїх заявках дехто з науковців описував, якими корисними будуть їхні заплановані дослідження для національних інтересів, тоді як насправді ними рухала щира наукова допитливість і бажання написати пару статей.
Станіслав М. Улям, «Пригоди математика»

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #5 : 2012-12-17 18:45:14 »
Я з пітонами не дружу, тому скрипт поки що не зміг запустити.
Яка операційна система?
Чи встановлено wxPython?
Edit:
Під вінду/Мак можна спробувати встановити пакет звідси:
http://www.enthought.com/products/epd_free.php
там є достатній набір ліб, щоб запустився мій скрипт (wxPython є - і достатньо), але якогось біса в них lxml в платних версіях тільки - lpOD не встановити. Тому добре юзати Лінукс - тут за lxml платити не треба.
« Змінено: 2012-12-17 21:48:50 від serg_ik »
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній Олександр Барановський

  • Модератор дошки
  • Графоман
  • *****
  • дописів: 359
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #6 : 2012-12-18 00:44:18 »
Ні, ніяких проблем немає. Просто я Python ніколи не використовував, ніде на моїх машинах він не встановлений, і мені «страшно» було серед ночі почати цим бавитися. :-)

Так, зараз пишу з під ОС, яку тут не прийнято згадувати.

Як матиму час і натхнення, то спробую встановити Python на лінукс-машині. Тоді поділюся враженнями.
У своїх заявках дехто з науковців описував, якими корисними будуть їхні заплановані дослідження для національних інтересів, тоді як насправді ними рухала щира наукова допитливість і бажання написати пару статей.
Станіслав М. Улям, «Пригоди математика»

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #7 : 2012-12-18 14:52:52 »
Так сучасні дистри Лінукс без Пітона і жити не можуть, наприклад, в Федори та  її червонобрилих родичів навіть пакетний менеджер без нього не працює, Гном без Пітона не живе. Тому де-де, а на Лінукс машині все гут з коробки - з сторони нічого докачувати не треба.




"wxPython in action" продовжую читати і Форморобка покращується:
« Змінено: 2012-12-18 14:54:20 від serg_ik »
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній piktor

  • Видавець
  • *******
  • дописів: 3396
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #8 : 2012-12-18 22:32:12 »
і мені «страшно» було серед ночі почати цим бавитися. :-)
Так, є чого побоюватися, пітонщики їдять дітей.
Всим, хто тоне й не знає,
За що вхопитись,
Хто вже з останніх
Вибився сил:
Попереджаю - я не колода,
Попереджаю - я крокодил.

Відсутній Олександр Барановський

  • Модератор дошки
  • Графоман
  • *****
  • дописів: 359
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #9 : 2012-12-23 23:06:52 »
…на Лінукс машині все гут з коробки…
Ваша правда. Python є. То я не перевіривши сказав.

Запускаю Форморобку. Нічого не заповнюю. Вибираю Файл --> Зберегти…, діалогове вікно навіть не з’являється. Натомість отримую повідомлення про помилку, ніяких файлів не створює.
username@hostname:~/FormMaker$ ./formmaker.py
lpOD не встановлено в системі
Traceback (most recent call last):
  File "./formmaker.py", line 142, in on_data_file
    wildcard=wild, defaultDir=getcwd()) as dialog:
AttributeError: 'FileDialog' object has no attribute '__exit__'
У чому причина? Що робити?

Глянув wx.FileDialog і AttributeError, але це мені не допомогло. За текстом помилки нічого не наґуґлюється.

FormMaker 0.4 (перевірив також з 0.3, те саме)
Debian 6.0.5
Python 2.6
wxPython 2.8
У своїх заявках дехто з науковців описував, якими корисними будуть їхні заплановані дослідження для національних інтересів, тоді як насправді ними рухала щира наукова допитливість і бажання написати пару статей.
Станіслав М. Улям, «Пригоди математика»

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #10 : 2012-12-24 16:36:06 »
Значить файлдіалог не може працювати під with.

Дивно це якось... В мене wxPython версії 2.8.12.0 і метод __exit__ в FileDialog є.

Втім... прибрав цю інструкцію - має запрацювати.
« Змінено: 2012-12-24 16:40:56 від serg_ik »
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній Олександр Барановський

  • Модератор дошки
  • Графоман
  • *****
  • дописів: 359
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #11 : 2012-12-26 00:37:02 »
Дякую. Так працює.

Справді, дивно. Якщо «файлдіалог не може працювати під with», як Ви кажете, то мало б і у Вас не працювати, ні?

Версію wxPython уточнив: 2.8.10.1. У Debian Stable пакунок називається python-wxgtk2.8, версія 2.8.10.1-3+b1.
У своїх заявках дехто з науковців описував, якими корисними будуть їхні заплановані дослідження для національних інтересів, тоді як насправді ними рухала щира наукова допитливість і бажання написати пару статей.
Станіслав М. Улям, «Пригоди математика»

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #12 : 2012-12-26 21:35:47 »
Я так підозрюю, що в мене wxPython просто збирався новішою версією swig, яка автоматично додала метод __exit__ (прикрутила його до деструкторі та й по всьому). Того в практично однакових версій wxPython така різна поведінка.
Втім, це - дрібна технічна деталь, з якою вже знаю як боротись  ;)
Більше мене турбує, що ВАК з нового року робить якісь нововведення, і вони не відображаються на їх офсайті. Таке враження, ніби вони спеціально напускають туману.
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.

Відсутній Олександр Барановський

  • Модератор дошки
  • Графоман
  • *****
  • дописів: 359
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #13 : 2013-01-02 23:16:37 »
Більше мене турбує, що ВАК з нового року робить якісь нововведення,…
Припускаю, що зміни спонукатимуть до змін у Форморобці, так? Тому запитаю: про які нововведення йдеться? І звідки чутки?

вони не відображаються на їх офсайті…
Так ВАК не існує. Тому й сайт не оновлюється. Чи Ви на сайті Міносвіти хотіли щось знайти?
У своїх заявках дехто з науковців описував, якими корисними будуть їхні заплановані дослідження для національних інтересів, тоді як насправді ними рухала щира наукова допитливість і бажання написати пару статей.
Станіслав М. Улям, «Пригоди математика»

Відсутній Сергій Лисовенко

  • Літератор
  • ******
  • дописів: 1489
  • Карма: +0/-0
Re: Заповнювач облікової картки
« Відповідей #14 : 2013-02-14 12:09:03 »
Припускаю, що зміни спонукатимуть до змін у Форморобці, так? Тому запитаю: про які нововведення йдеться? І звідки чутки?
Якщо зміняться тільки назви і місця полів - не страшно - можна змінити тільки файл з даними, який використовує форморобка. Чутки йдуть від колег. Останній раз прийшло до секретаря ради оголошення про зміну вимог що до публікацій (з кандидатів тепер вимагають 5 публікацій і щоб одна з них була в індексованому журналі).
Якщо Лінукс написали студенти - нехай вони під ним і навчаються.