Мале Windows алатке које преузимају посао који се иначе ради ручно, из дана у дан: надгледају фасцикле и сређују датотеке, шаљу их поштом, извлаче податке из великих текстуалних фајлова, покрећу спајање докумената у Word-у или понављају кликове мишем. Свака је прављена по мери једног радног тока и ради без надзора, а корисника узнемирава само када нешто пође наопако. Овакве програме радим у оквиру услуге израде Windows програма и сервисних апликација.
Надгледање фасцикли и преименовање датотека
Рађено у четвртом кварталу 2021.
Проблем
Клијенту су датотеке стизале у више фасцикли истовремено, а сваку је требало преименовати по тачно одређеном правилу и затим пребацити у другу фасциклу, одакле их је преузимао следећи корак обраде. У нови назив је морао да уђе и тачан тренутак у коме је датотека стигла у изворну фасциклу — до секунде. Тај податак се ручно не може поуздано забележити.
Решење
Направљена је Windows алатка која сама надгледа фасцикле и обрађује сваку нову датотеку чим се појави:
- истовремено надгледање најмање десет фасцикли или датотека;
- преименовање по правилу, уз временски жиг тренутка када је датотека додата у изворну фасциклу;
- премештање или копирање преименоване датотеке у унапред одређену фасциклу;
- једноставан интерфејс, иако је нагласак био на поузданом раду у позадини.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): главни језик у коме је алатка написана.
- Надгледање система датотека: праћење фасцикли и датотека у реалном времену.
- Временски жигови: тачно време доласка датотеке уписано у нови назив.
Резултат
Датотеке стижу у одредишну фасциклу већ преименоване и са тачним временом доласка, без ичијег учешћа, па следећи корак обраде увек добија оно што очекује.
Аутоматска конверзија XML датотека у CSV и JSON
Рађено у четвртом кварталу 2020.
Проблем
Клијент је добијао обимне XML датотеке из различитих извора — неке су се додавале, неке премештале из других фасцикли — а даље су му биле потребне у CSV или JSON облику. Део датотека стизао је оштећен, и оне нису смеле да зауставе обраду осталих нити да се изгубе међу успешно обрађеним.
Решење
Направљена је алатка са графичким интерфејсом која цео ток води сама:
- стално надгледање једне или више изабраних фасцикли, без обзира на то да ли је XML додат или премештен;
- тренутна конверзија сваке нове датотеке у CSV или JSON, према избору који корисник лако мења;
- разврставање после обраде: успешно обрађен XML одлази у фасциклу „Обрађено", а оштећен у фасциклу „Оштећено";
- прегледан интерфејс, у коме је јасно шта је подешено и шта се дешава.
Захтеви су се мењали у току рада, па је алатка дорађивана у више кругова док није покрила цео радни ток клијента.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): примарни језик апликације.
- Графички кориснички интерфејс (GUI) за подешавање и праћење рада.
- XML, CSV и JSON: улазни и излазни формати података.
Резултат
Конверзија више не захтева никакву ручну радњу, а оштећене датотеке су одвојене и одмах се види шта треба проверити. Клијент је био задовољан коначном алатком.
Аутоматско слање нових датотека е-поштом
Рађено у трећем кварталу 2021.
Проблем
Сваку датотеку, на пример PDF, која се појави у одређеној фасцикли на корисниковом рачунару требало је послати на унапред задату адресу. Поступак је морао да буде потпуно невидљив за корисника, осим када слање не успе, а послата датотека није смела да остане у фасцикли и да буде послата поново.
Решење
Направљен је лаган програм за Windows 10 који ради у позадини:
- праћење фасцикле: свака нова датотека се одмах уочава;
- слање е-поштом преко Gmail налога, на унапред задату адресу;
- руковање грешкама: грешке при слању се бележе, а корисник добија обавештење само када слање не успе;
- после слања се датотека, по избору, премешта у другу фасциклу или брише;
- покретање са Windows-ом, тако да програм увек ради и после поновног покретања рачунара;
- подешавања у текстуалном фајлу, укључујући податке о налогу, па се мењају без измене програма.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): основни развој апликације.
- Windows сервиси: непрекидан рад у позадини.
- Gmail: пренос е-поште.
Резултат
Корисник само спусти датотеку у фасциклу, а све остало се дешава само — и појављује се пред њим једино када нешто заиста треба да реши.
Издвајање података из великих текстуалних датотека
Рађено у четвртом кварталу 2020, као хитан посао.
Проблем
Клијенту је била потребна једноставна Windows апликација која чита обичну текстуалну датотеку, издваја из ње одређене редове према задатом разделнику и уписује их у нови документ. Датотеке су биле велике, а алатка је требала одмах.
Решење
Направљена је лагана и брза апликација са неколико пажљиво бираних могућности:
- конфигурациони фајл у коме корисник задаје подразумевану фасциклу за претрагу и разделник по коме се подаци издвајају;
- избор датотеке кроз уобичајени Windows прозор за отварање;
- приказ напретка уживо, посебно за читање датотеке и за израду новог документа;
- сређивање разделника: где се разделници нижу један за другим, апликација сама умеће размак, па је излаз прегледан;
- штампа издвојених података на изабраном штампачу, без чувања датотеке на диску — подаци не остају иза, а диск се не затрпава.
Коришћене технологије
- Windows апликација прављена за обраду и издвајање текста.
- Праћење напретка у реалном времену током читања и израде документа.
Резултат
Посао који се раније радио претрагом кроз огромне фајлове своди се на избор датотеке и један клик.
Утисак клијента
★★★★★5/5“Хвала вам на одличном раду.”
Покретање спајања докумената у Word-у
Рађено у првом кварталу 2021.
Проблем
Клијент је спајање докумената у Word-у покретао VBA кодом из Excel-а, а подаци су до Word-а путовали преко посредничких текстуалних фајлова. Желео је директнији пут — без одустајања од Excel-а у коме је остатак процеса већ радио.
Решење
Направљен је самосталан извршни програм који преузима само део посла везан за Word:
- покретање са параметрима: програм добија везу ка бази података и путању и назив шаблона;
- сарадња са Excel-ом: VBA код је остао у Excel-у, а део који је покретао Word прешао је у нови програм;
- директно читање из базе, па посреднички текстуални фајлови више нису потребни;
- самостално затварање чим је извештај готов, без остављених отворених прозора.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): изабран због поузданости и добре сарадње са Microsoft Office програмима.
- Microsoft Word Interop: рад са Word-ом и спајањем докумената.
- VBA у Excel-у: постојећи део процеса са кога се програм покреће.
Резултат
Спајање докумената ради краћим путем, без посредничких фајлова, а корисници га и даље покрећу из Excel-а, на исти начин као раније.
Утисак клијента
★★★★★5/5“Одличан посао, веома стручан програмер.”
Понављање клика мишем на више места на екрану
Рађено у трећем кварталу 2021.
Проблем
Клијенту је била потребна Windows апликација која један клик мишем готово истог тренутка понавља на више места на екрану која сам одреди. Пресудни су били брзина и прецизност: свака „копија" клика морала је да падне тачно на задате координате, без приметног застоја.
Решење
- тренутно пресликавање основног клика на сва задата места;
- клик по координатама: корисник за сваку копију клика задаје тачне X и Y координате;
- до петнаест додатних места клика у једној поставци;
- подесив размак између поновљених кликова, за програме којима треба тренутак да одговоре.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): главни језик апликације, изабран због прецизности и одзива који су пројекту били потребни.
Резултат
Радња која је захтевала низ узастопних кликова своди се на један клик, са истом прецизношћу сваки пут.
Windows форме прилагођене раду са тастатуре
Рађено у другом кварталу 2021.
Проблем
Програми су испуњавали функционалне захтеве, али рад у њима није био удобан: форме су неспретно користиле простор, нису се увек добро прилагођавале промени величине прозора, а скоро свака радња је захтевала миш. За некога ко у програму проводи цео радни дан, то се претвара у изгубљено време.
Решење
- фиксне форме тамо где нема контрола којима би промена величине користила;
- распоред контрола који не троши простор на форми;
- правилно праћење величине прозора код форми које се шире, тако да распоред остаје доследан;
- пречица на тастатури за сваку радњу у програму;
- кретање тастером Tab кроз поља, редом којим се заиста ради.
Коришћене технологије
- C# програмски језик (programiranje.co.rs): примарни језик апликација.
- .NET Framework: израда апликација и побољшање рада у њима.
- Anchor и Dock: особине контрола које држе распоред форме доследним при промени величине.
Резултат
У програмима се ради брже и без сталног преласка са тастатуре на миш, а форме изгледају уредно на свакој величини прозора.
Треба вам слична алатка?
Шта улази у израду, како се одређује цена и како изгледа ток посла, пише на страници израда Windows програма и сервисних апликација. Програм који управља туђом веб апликацијом погледајте на примеру слања SMS порука из десктоп програма, а остале радове међу референцама за Windows програме и аутоматизацију.
Оставите одговор