ДДС дневници под Linux

Автор Владимир Колев | Вариант за отпечатване Вариант за отпечатване   

1 Star2 Stars3 Stars4 Stars5 Stars (3гласа, средно: 4.67 от общо 5)
Loading ... Loading ...
 

dnev07-start-screenИзвестно е, че в България приложенията, които се изискват за предоставяне на разните справки от фирмите са писани само за работа под продуктите на Microsoft. Една от разпространените програми за изготвяне на съответните справки е DNEV07 (Дневници), която за още по-голяма изненада работи под MS-DOS (нещо, на което Microsoft отдавна каза сбогом). Но това до известна степен е добре, тъй като MS-DOS може доста лесно да бъде емулиран под Linux, за разлика от другите брилянтни решения предлагани от министерствата в България.

В тази статия ще научите как да настроите и използвате приложението обяснено в няколко прости стъпки. Държа да спомена още в началото, че резултатът макар и приемлив не е най-приятния, който може да очаквате. Проблема се състои в това, че текстовите редактори под Linux не могат да представят правилно rtf документите, с които работи програмата DNEV07, но за това съществува също решение, което макар и не съвсем приятно ще ви върши работа.

Подготовка

Както споменах, приложението DNEV07 работи под MS-DOS, за което е необходимо да имате инсталиран dos-емулатор. За радост на потребителя изборът не е малък, но аз лично се спрях на DOSBox (Нека страницата да не ви стряска, тъй като предимно тези емулатори се използват от хора с носталгия към по-старите игри).

Не е изключено същата добра работа да ви свърши и FreeDOS, но не съм тествал този вариант все още и няма как да кажа дали всичко ще работи

. DOSBox можете да инсталирате почти със сигурност от хранилището на вашата дистрибуция. За целта отворете пакетния мениджър и потърсете dosbox след, което го инсталирайте.

За Ubuntu/Debian:

[bash]$ sudo apt-get install dosbox[/bash]

За Fedora/openSuSe:

[bash]$ yum install dosbox[/bash]
След като сте инсталирали приложението можете да го стартирате от терминала с командата dosbox, но разбира се GNOME можете да го намерите и в менюто Applications → Games → DOSBox (както казах предимно емулаторите се използват за игра на стари игри).

Това е цялата подготовка – остава да нагласим приложението и да започнете работа с него.

Инсталация и настройка

Инсталацията, ако може така да бъде наречена се състои в това да разархивирате .zip архива съдържащ програмата и създадената след разархивирането директория да преместите на удобно място. Препоръчвам ви това да бъде вашата лична директория (/home/). За сега нека допуснем, че пътя до директорията е /home/<вашето_потр._име>/DNEV07/.

Следващата стъпка е сравнително лесна – стартирате DOSBox и задавате C: да бъде ~/DNEV07 – ще се убедите, че не е трудно след като видите как става:

  1. При стартиране се появява приветстващият екран на DOSBox с мигащ курсор след устройството Z:\> (снимка)
  2. За да зададете C: дяла да бъде DNEV07 е необходимо да направите следното:
    [bash]mount c ~/DNEV07[/bash]
    Ще получите потвърждение от рода:
    [bash]Drive C is mounted as local directory /home//DNEV07/[/bash]
  3. Сменете работния дял на C: (става като напишете c: и натиснете Enter) След командата dir ще ви се покаже съдържанието на директорията DNEV07.
  4. Самата инсталация изисква да направите следните стъпки:
    [ps]C:\> cd NASTRO //натискате enter, за да влезете в директория nastro
    C:\NASTRO> INSTALL.BAT //натискате enter, за да изпълните инсталацията
    C:\NAStRO> TBDS.COM //натискате enter, за да активирате кирилизацията
    C:\NASTRO> cd .. //натискате enter, за да ви върне в началната директория[/ps]

C:\> и C:\NASTRO> не трябва да бъдат изписвани! Добавени са с цел онагледяване на самите команди. Текстът след ”//”, както и наклонените са коментари, който също не трябва да бъдат въвеждани

dnev07-welcome-screenТова беше инсталацията. Стъпката за активирането на кирилизацията е добре да я запомните, тъй като ще се налага да я изпълнявате преди всяко ново стартиране на DNEV07. Важно да запомните са комбинациите от клавиши за смяна на клавиатурната подредба:

lShift + Alt        - Смяна между латиница и кирилица
rShift + Alt        - Смяна между БДС и фонетична клавиатурна подредба
rShift + Ctrl       - Смяна между стандартни и графични символи
lShift + rShift     - Смяна между стандартен и потребителски шрифт

Остана само стартирането на приложението:
[ps]C:\> DNEV07.EXE //стартира приложението[/ps]
Резултатът е можете да видите на снимката вляво. След тестовете, които проведох (трябваше да си измислям разни данни) мога да кажа, че приложението работи без проблеми и успешно създава справките в директорията TEXT/.

Проблемът с rtf документите

RTF (Rich Text Format) е един малко особен формат, който за съжаление се интерпретира по различен начин под Linux и Windows. Проблемът не е самата кодировка на файловете, а позиционирането на елементите и по-точно оформянето на таблици, чрез символи. Ще бъдете малко стреснати като видите резултата доста неподреден. За това не се опитвайте да отваряте файловете с OpenOffice а използвайте Geany – наистина е повече програмен редактор, но за сметка на това изключително добре се справя с форматирането и разпознаването на кирилицата, а и ще можете лесно да разпечатвате необходимите ви файлове.

Надявам се статията да ви е била от полза. Ако откриете грешки или по-добри начини за използването на счетоводното приложение под Linux чувствайте се свободни да добавите това в коментарите

Създаване на конфигурационен файл

За да не се налага да изпълнявате всеки път командите за прикрепяне на директорията на DNEV07 и изпълнението на програмата за кирилизиране направих един малък конфигурационен файл, който да автоматизира нещата. Ето и как да накарате dosbox да го използва:

  1. Създайте директория .dosbox във вашата лична директория (/home//) (както си е с точката, за да е скрита директорията и да не я изтриете по погрешка)
  2. В същата директория създайте файл dosbox.conf (оставете го празен)
  3. Стартирайте dosbox със следните параметри:
    [bash]dosbox -conf ~/.dosbox/dosbox.conf[/bash]
  4. В dosbox изпълнете следната команда:
    [bash]config -writeconf dosbox.conf[/bash]
  5. Отворете файла отново за редакция и въведете следното съдържание и запишете:
    [bash][autoexec]
    # mount DNEV07 dir as C:
    mount c ~/DNEV07
    # change to C:
    c:
    # open dir NASTRO
    cd NASTRO
    # start the cyrillic module
    TBDS.COM
    # go back to c:
    cd ..[/bash]

При следващото стартиране dosbox ще изпълни всички команди вместо вас. разбира се можете да добавите на нов ред и DNEV07.EXE, за да стартира директно програмата при стартиране на dosbox. По този начин всичко ще ви бъде автоматизирано. Разбира се всичко може да бъде опростено до още по-голяма степен – като създадете скрипт, който да стартира приложението с желаната от вас конфигурация, и същевременно да можете да ползвате dosbox със стандартната конфигурация за други приложения.

Относно автора

Владимир Колев е написал 48 статии в този блог.

Студент в техническия университет в град Кьолн/Германия. Занимава се с програмиране от 6 години. Предпочитан език за програмиране Python. Други езици: C, Java, PHP, MySQL, SQLite.


Вашите коментари

4 Коментара

  1. bdzed
    Posted 30/06/2010 at 22:32 | Permalink | Reply

    здравейте на всички искам да попитам от къде мога да изтегля тези дневници

    • Posted 02/07/2010 at 11:58 | Permalink | Reply

      Ами даваха се от НАП на дискета, сега мисля, че смениха програмата и за нея не съм тествал какви са възможностите да работи под Linux. Можеш да погледнеш на тяхната страница или по-точно: http://portal.nap.bg/ospage?id=148

  2. Росен Владимиров
    Posted 25/12/2010 at 14:53 | Permalink | Reply

    На dosbox-а не работи печата, по добре е да се ползва dosemu+console-cyrillic като се конфигурира печата по следния начин няколко варианта:
    ##############################################################################
    ## Printer and parallel port settings

    # Print commands to use for LPT1, LPT2 and LPT3.
    # Default: “lpr -l”, “lpr -l -P lpt2″, and “” (disabled)
    # Which means: use the default print queue for LPT1, “lpt2″ queue for LPT2.
    # “-l” means raw printing mode (no preprocessing).

    $_lpt1 = “lpr -l -P Epsons”
    #$_lpt2 = ‘cut -c1-119 | paps –encoding=mik –paper=a4 –font=”Courier New 8″ –top-margin=10 –bottom-margin=10 –right-margin=10 –left-margin=10 | lp -l -P cups-PDF’
    #$_lpt2 = “iconv -s -f mik -t WINDOWS-1251 -o /mnt/app/temp/out.txt > /dev/null”
    #$_lpt2 = ‘cut -c1-118 | iconv -s -f mik -t WINDOWS-1251 -o /home/username/.wine/dosdevices/c:/temp/PRNSPOOL/out.txt > /dev/null’
    $_lpt2 = ‘dos2unix | cut -c1-130 | tee /mnt/app/temp/out.txt > /dev/null’

    кирилизацията е натив няма нижда от допълнителни драйвери.
    $_internal_char_set = “bg-mik”
    това е за да работи коректно клавиатурата

  3. dds
    Posted 13/04/2011 at 14:56 | Permalink | Reply

    a na windows kak bi izglejdal konf fail?

Публикувай коментар

Вашият е-мейл никога няма да бъде споделен. Задължителните полета са маркирани с *

*
*

Switch to our mobile site