В този раздел са описани примери на сложни макроси реализирани в универсалния пакет "Уни" на програма CPAccounting®:
Вход от друго приложение / друга програма
Плащане на доставчик, РКО
Производство
Фактуриране
Изписване
Плащане от клиент, ПКО

Пълно описание на структурата на сметките, които се използват, може да видим в примерния сметкоплан.

Вход от друго приложение / друга програма

Има няколко варианта на макроси за вход (import) на данни от друго приложение на програма CPAccounting® или от друга програма. В тях се използват някои от външните програми описани във Вход от чужд toCpa.* файл. Ще разгледаме следните макроси:


Макроси "1005. СервИзпращане на данни" и "1008. СервПриемане на данни" служат за прехвърляне на данни между две приложения на програма CPAccounting®.

ИЗПРАЩАНЕТО НА ДАННИ
завършва със създаване на компресиран файл с име xxxyyyyy.zip, където:
- xxx е номерът (с водещи нули) на обекта, в който работи приложението (той се получава от автоматичен стринг (Ctrl+D) "21. Номер на обект"),
- yyyyy е пореден номер (с водещи нули) на файла (той се получава като към номера на предишния изпратен файл се прибави 1).
В елемент "90000. Последно изпратен файл" от номенклатура "119. !Параметри", програмата записва номера на файла и системната дата, а в елемента "90001. Последно изпратени номенклатури" - ггггмм на последния системен месец и системната дата. Номерата 90000 и 90001 на двата елемента може да са други - те се четат от управляващия текст "1014. СервИзпращане на данни - параметри".
При следващо изпращане се вземат:

В текст 1014 може да променим устройството, върху което се копира файла. Ако устройството е мрежов адрес (включително VPN), установяването и прекъсването на връзка с него може да се програмират в RemoteOn.bat и RemotOff.bat (те се намират в \Cpa\Cpa директорията на диска на приложението.

ПРИЕМАНЕТО НА ДАННИ
гледа елементите с номера по-малки от 90000 от номенклатура "119. !Параметри", които посочват от кои обекти може да се приемат данни в текущото приложение. В случай на централа, може да се приемат данни от всички обекти. В случай на огледален обект (един и същи обект, който се води на два компютъра несвързани в мрежа - например, в офиса се въвеждат доставките и банковите плащания, а в магазина - всичко останало), може да се приемат данни само от същия обект.
Програмата прави цикъл по елементите с номера по-малки от 90000 от номенклатура "119. !Параметри". За всеки елемент се опитва да приеме файл с номер с 1 по-голям от записания в полето № (след "параметър"). Ако за нито един елемент не намери такъв файл, приемането приключва, дори и да има файлове с по-големи номера. Накрая макросът приключва неприключените месеци.

При приемането на данни се счита, че промени по приетите документи може да се правят само в изпращащия данните обект. Затова за всеки пристигащ документ се гледа дали не съществува в приемащия обект документ със същите ггггмм, папка и документ (№). Ако съществува и е еднакъв по съдържание, не се приема повторно. Ако съществува, но се различава, преди приемането, документът в приемащия обект се изтрива.
Така, ако в изпращащия обект желаем да изтрием документ, трябва да оставим поне едно записване (например по сметка 3), иначе няма да се изтрие неговото копие в приемащия обект.

В управляващия текст "1017. СервПриемане на данни - параметри" може да променим устройството, от което да се копира файла с данните за приемане. Ако устройството е мрежов адрес (включително VPN), установяването и прекъсването на връзка с него може да се програмират в RemoteOn.bat и RemotOff.bat (те се намират в \Cpa\Cpa директорията на диска на приложението.

ДДС №-ът в изпращащия и приемащия обект трябва да са еднакви.

Ако приложението е на диск R:, изпращането на данни използва директорията R:\Export.Cpa, а приемането на данни използва директорията R:\Import.Cpa. Тези директории трябва да създадем ръчно.


Макрос "69. Въвеждане на данни от pokupki.dbf" импортира данните от дневника на покупките по ДДС, създаден от програмата на данъчната служба. Това се извършва със следните стъпки:

Към началото на Вход от друго приложение / друга програма.


Макрос "70. Въвеждане на данни от prodagbi.dbf" импортира данните от дневника на продажбите по ДДС, създаден от програмата на данъчната служба. Това се извършва със следните стъпки:

Към началото на Вход от друго приложение / друга програма.


Макрос "500. Входен файл с покупки с toCPA3.dbf" импортира данни за покупки от текстов файл с фиксирана ширина на полетата (полетата са залепени едно за друго без разделители помежду им) на кирилица за DOS със следната структура (по поръчка на "Генис Консулт" ООД):

 1. FILE_DAN_N - БУЛСТАТ на фирмата, на която е инсталацията - трябва да е един и същ за всички редове - 10,
 2. SP - празно - 4,
 3. RED_NO - 6, въпреки, че номерът на реда е шестцифрен, този макрос може да обработи номера не по-големи от 9999,
 4. VI - вид на документа - 2,
 5. DOCUM_NO - 10,
 6. DATA - 10,
 7. DAN_NO - 10 (или 15),
 8. IME - 50,
 9. VID_SDELKA - 30,
10. OBSHTO - 15.2,
11. OSVOBODENI - 15.2,
12. STOJNOST - 15.2,
13. DDS - 60,
14. GOLJAMO_2 - 60.

Тъй като пълното име на макроса завършва с цифрата 0, той не може да се зареди с неадминистраторска парола. За да използваме макроса е необходимо предварително да направим следното:
1) влизаме в програмата с администраторска парола и създаваме в номенклатура "2. Типове папки" елемент, в който не попълваме сметки, а само на последния ред попълваме макрос 500,
2) създаваме папка с тип създадения в т. 1) елемент.
Така при влизане в папката, дори и с неадминистраторска парола, автоматично се зарежда макросът и се появява бутон "1. входен файл покупки", който натискаме за стартирането му.

След натискане на Alt+1 или на бутона макросът извършва импортирането със следните стъпки:

Към началото на Вход от друго приложение / друга програма.


Макрос "508. Входен файл с покупки с Txt.dbf" импортира данни за покупки от текстов файл с разделители между полетата от тип CSV (описан във Вход на данни от чужд текстов файл) на кирилица за Windows със следната структура (по поръчка на ЕТ "Илия Буров - Стоил Буров"):

 1. дата на фактурата
 2. номер на фактурата
 3. код на стоката (може една и съща стока да има различни кодове в различните обекти)
 4. име на стоката
 5. мярка - не се гледа
 6. количество
 7. единична цена без ДДС - само за проверка
 8. сума без ДДС
 9. сума с ДДС - само за проверка
10. име на доставчика
11. БУЛСТАТ на доставчика
12. коментар:
     - хххх - пореден номер на документа в папката
     - 1 интервал
     - К или Б - каса или банка
     - 1 интервал
     - ХХХ - име (а не номер) на папка (съответства на име на обект) - в някои от таблиците обяснени по-долу се прави съответствие с № на папката, в която се осчетоводяват данните

Тъй като пълното име на макроса завършва с цифрата 0, той не може да се зареди с неадминистраторска парола. За да използваме макроса е необходимо предварително да направим следното:
1) влизаме в програмата с администраторска парола и създаваме в номенклатура "2. Типове папки" елемент, в който не попълваме сметки, а само на последния ред попълваме макрос 508,
2) създаваме папка с тип създадения в т. 1) елемент.
Така при влизане в папката, дори и с неадминистраторска парола, автоматично се зарежда макросът и се появява бутон "1. входен файл покупки", който натискаме за стартирането му.

След натискане на Alt+1 или на бутона макросът извършва импортирането със следните стъпки:

Към началото на Вход от друго приложение / друга програма.


Макрос "501. Входен файл с продажби с toCPA1/2.dbf" импортира данни за продажби от текстов файл с фиксирана ширина на полетата (полетата са залепени едно за друго без разделители помежду им) на кирилица за DOS (по поръчка на "Генис Консулт" ООД). Този макрос обработва два варианта на данните. Необходимо е, преди да се стартира макросът, в Cpa\System директорията на текущото приложение да се преименува един от двата файла ToCpa1.dbf или ToCpa2.dbf на ToCpa.dbf (т. е. да се изтрие цифрата преди точката).

Файлът ToCpa1.dbf е със следната структура:
1. FILE_DAN_N - БУЛСТАТ на фирмата, на която е инсталацията - трябва да е един и същ за всички редове - 10,
2. SP - празно - 5,
3. RED_NO - 6, въпреки, че номерът на реда е шестцифрен, този макрос може да обработи номера не по-големи от 9999,
4. VI - вид на документа - 2,
5. DOCUM_NO - 10,
6. DATA - 10,
7. DAN_NO - 10,
8. IME - 50,
9. VID_SDELKA - 30,
10. OBSHTO - 15.2,
11. STOJNOST - 15.2,
12. DDS - 15.2,
13. GOLJAMO_1 - 60,
14. GOLJAMO_2 - 60.

Файлът ToCpa2.dbf е със следната структура:
1. FILE_DAN_N - БУЛСТАТ на фирмата, на която е инсталацията - трябва да е един и същ за всички редове - 10,
2. SP - празно - 4,
3. RED_NO - 6, въпреки, че номерът на реда е шестцифрен, този макрос може да обработи номера не по-големи от 9999,
4. VI - вид на документа - 2,
5. DOCUM_NO - 10,
6. DATA - 10,
7. DAN_NO_OBE - 15,
8. IME - 50,
9. VID_SDELKA - 30,
10. OBSHTO - 15.2,
11. STOJNOST - 15.2,
12. DDS - 15.2,
13. GOLJAMO_1 - 60,
14. GOLJAMO_2 - информация за плащане 501 или 503 - 60.
Различава се от файла ToCpa1.dbf по:
- дължината на полето SP,
- дължината на полето DAN_NO_OBE, където се очаква след БУЛСТАТ да е залепен номер на обект,
- използва се началото на полето GOLJAMO_2.

Тъй като пълното име на макроса завършва с цифрата 0, той не може да се зареди с неадминистраторска парола. За да използваме макроса е необходимо предварително да направим следното:
1) влизаме в програмата с администраторска парола и създаваме в номенклатура "2. Типове папки" елемент, в който не попълваме сметки, а само на последния ред попълваме номера на макроса,
2) създаваме папка с тип създадения в т. 1) елемент.
Така при влизане в папката, дори и с неадминистраторска парола, автоматично се зарежда макросът и се появява бутон "1. входен файл продажби", който натискаме за стартирането му.

След натискане на Alt+1 или на бутона макросът извършва импортирането със следните стъпки (със звездички са показани разликите му с макрос 506. Входен файл с продажби с toCPA21.dbf):

Към началото на Вход от друго приложение / друга програма.


Макрос "506. Входен файл с продажби с toCPA21.dbf" импортира данни за продажби от текстов файл с фиксирана ширина на полетата (полетата са залепени едно за друго без разделители помежду им) на кирилица за Windows (по поръчка на "Генис Консулт" ООД за х-л "Лозенец"). Необходимо е, преди да се стартира макросът, в Cpa\System директорията на текущото приложение да се преименува файла ToCpa21.dbf на ToCpa.dbf (т. е. да се изтрият цифрите преди точката).

Файлът ToCpa21.dbf е със следната структура:
1. DOC_NUM - 10,
2. PAYTYPE_ID - 14,
3. DOCTYPE_ID - 11,
4. DOCTY_NAME - 31,
5. DOC_DATE - 8,
6. VAT_VALUE - 9,
7. LINEWOTVAT - 11,
8. LINE_VAT - 11,
9. LINE_TOTAL - 11,
10. CURRENCY - 8,
11. CLT_ID - 11,
12. CLT_NAME - 31,
13. DANNOMER - 13,
14. BULSTAT - 13,
15. MOL - 31,
16. ADDRESS - 51,
17. PAY_TYPE - 30.

Този макрос действа аналогично на макрос 501. Входен файл с продажби с toCPA1/2.dbf като са променени само точките отбелязани със звездички:

Към началото на Вход от друго приложение / друга програма.

Плащане на доставчик, РКО

Тук няма да разглеждаме широкото разнообразие от варианти и удобства в универсалния пакет "Уни".
В тиражираната версия на модул "Счетоводство" на програма CPAccounting® са подготвени няколко макроса свързани с плащанията към доставчици.

Осчетоводяването на плащането по сметка 401. Доставчици може да се извърши:

Може да изпечатаме:


Може да заредим макрос "57. Плащане на доставчик" ръчно или като влезнем в папка от някой от следните типове:

Ако стартираме макроса без да сме избрали папка в точката "Въвеждане и редактиране на документи", ще излезне кошче със съобщението:
Натиснете F10 (главното меню),
"1. Въвеждане данни" и оттам "1. Документи".
После изберете ПАПКА и документ и стартирайте макроса отново.

Първо макросът предлага да изберем доставчик и сумата, която плаща.
В полето за избор на доставчик е предложен последният доставчик, с който сме работили.
Ако изведем на екран списък с доставчиците, в последната колона ще видим салдото на всеки доставчик.
Сумата за плащане, освен положително число, може да бъде 0 или отрицателно число.

След като натиснем бутона "1. Продължение" макросът прави справка по сметка 401. Доставчици за неплатените документи на избрания доставчик (таблица 206, в режим на акумулиране, сортиране по падеж, с отделно натрупване на сумите по дебита и по кредита чрез сумиране със знака +). Ако справката се окаже празна, излиза съобщението "Няма неплатени документи" и обработката приключва.
След това отива на справка акумулирана, зарежда таблица 207 и стартира справката.

Макросът спира на екран за въвеждане на данни, на който са всички неплатени документи, подредени по дата на падеж с предложение за всеки документ с каква сума да се плати (закрие), така че общата сума да е равна на попълнената в началото сума за плащане.
Ако едновременно има документи с дебитни и кредитни салда, преди да разпредели сумата за плащане, макросът се опитва да ги закрие взаимно.
Ако сме посочили по-голяма сума за плащане от общото задължение на доставчика (сумата на документите с кредитно салдо минус сумата на документите с дебитно салдо), макросът предлага да се плати само задължението му.
Алгоритъмът, който изпълнява цялата тази логика е следният:

Може да променим предложените от макроса числа. За да се преизчисли сумата им, може да натиснем бутона "2. Преизчисли сумата".
Може да натиснем и бутона "9. Стъпка назад".
След като сме готови, натискаме "1. !Осчетоводи". Макросът осчетоводява плащанията в текущия документ.
След като свърши работата си, макросът зарежда указания в типа на папката макрос, а ако няма такъв - себе си.

Към началото на Плащане на доставчик, РКО.


За да се зареди макрос "37. РКО - печат", трябва да влезнем в папка от някой от следните типове:

Макросът подготвя РКО (разходен касов ордер) за печат в зависимост от това дали има осчетоводяване по дебита на сметка 401. Доставчици:

Към началото на Плащане на доставчик, РКО.


За да се зареди макрос "67. Масово плащане по каса 401/501", трябва да влезнем в папка от тип "масово плащане по каса 401/501" (с прикрепен макрос 67).
Макросът автоматично осчетоводява плащането по каса на всички партиди по сметка 401, които са възникнали в текущия месец и са изцяло неплатени. Осчетоводяването се извършва в папката указана в управляващ текст "1. Параметри". Осчетоводяването се извършва в последователни документи след последния в папката. В един документ от папката се осчетоводяват всички партиди по сметка 401. Доставчици от една дата. Номерът на обекта по сметка 501. Каса в лева се взема от управляващия текст.

Към началото на Плащане на доставчик, РКО.


Платежни нареждания

В момента се подготвя нова версия.

Към началото на Плащане на доставчик, РКО.

Производство

В момента се подготвя нова версия.

Фактуриране

Тук няма да разглеждаме широкото разнообразие от варианти на фактуриране и множеството удобства в универсалния пакет "Уни".
В тиражираната версия на модул "Счетоводство" на програма CPAccounting® са подготвени няколко варианта на автоматично фактуриране по сметки:
702. Приходи от продажби на стоки,
703. Приходи от продажби на услуги,
701. Приходи от продажби на продукция,
707. Приходи от продажби на материали,
с и без изписване по сметки:
304. Стоки,
303. Продукция и
302. Материали.
Те са реализирани от един и същ макрос "18. Фактуриране". В него е заложена и възможността за осчетоводяване на плащането по сметка 411. Клиенти срещу сметка 501. Каса в лева и издаване на ПКО (приходен касов ордер). Пълно описание на структурата на сметките, които се използват тук, може да видим в примерния сметкоплан.

Ще разгледаме следните разклонения на макроса:


Тъй като пълното име на макроса "18. Фактуриране    0" завършва с цифрата 0, той не може да се зареди с неадминистраторска парола. За да използваме макроса е необходимо предварително да направим следното:
1) влизаме в програмата с администраторска парола и създаваме в номенклатура "2. Типове папки" елемент, в който на последния ред попълваме макрос 18. За попълване на сметки използваме един от следните два варианта:

- фактуриране с изписване по сметки 302, 303 и 304 (не са посочени сметки 707, 701, 702 и "4532. Начислен данък за продажбите", но те ще се попълнят автоматично от макроса):

304 кредит
703 кредит
303 кредит
302 кредит
411 дебит
  дебит / кредит

- фактуриране без изписване по сметки 302, 303 и 304 (не е посочена сметка "4532. Начислен данък за продажбите", но тя ще се попълни автоматично от макроса):

702 кредит
703 кредит
701 кредит
707 кредит
411 дебит
  дебит / кредит

2) създаваме папка с тип създадения в т. 1) елемент.
Така при влизане в папката, дори и с неадминистраторска парола, автоматично се зарежда макросът и се появява бутон "5. Фактуриране".

Може да използваме и смесен вариант представляващ пълно или частично обединение на горните два. Задължително е последният ред да е празна сметка по дебит / кредит. Например, ако предприятието няма собствено производство и не фактурира материали:

304 кредит
702 кредит
703 кредит
411 дебит
  дебит / кредит

Автоматичното фактуриране по ЗАДАДЕНА СУМА за плащане се използва в случаите когато фирмата не води отчетност какво точно е продала на даден клиент, но знае на каква сума възлиза то (например пазаруване с купони). В този случай програмата сама решава какво да продаде пропорционално на сумите по продажни цени на наличните артикули и стоки.

Въвеждането и печата на такава фактура се извършва както е описано във Въвеждане и печат на фактура С изписване по сметки 302, 303 и 304, но със следните разлики:

За програмистите на "СиПиЪкаунтинг" са предназначени обясненията в Описание на макроса.
Към началото на Фактуриране.


Въвеждането и печата на фактура С ИЗПИСВАНЕ по сметки 302, 303 и 304 се извършва в следната последователност:

Влизаме в нов документ на папката за фактуриране (която считаме, че е от тип фактуриране с изписване). Ако за първи път фактурираме в нов месец, влизаме в документ с номер равен на последния документ в папката с фактурите от предния месец + 1. Това е така защото поредният номер на фактурата се изчислява да е равен на "номера на документа в папката" + "начален номер на фактура" (записан в управляващ текст "1. Параметри", но без водещата единица). Ако стигнем до документ с номер 9999, продължаваме с номер 1, но преди това поправяме "начален номер на фактура" да е равен на десетцифрения номер (евентуално с водещи нули) на последната фактура и залепена водеща единица отпред.
Въпросът с номерацията на фактурите, а и всичко останало, е решен много по-елегантно в универсалния пакет "Уни".

Попълваме, ако желаем, антетката на документа (това не е задължително, но за датата е препоръчително), след което се появява прозорец със следните сметки: 304(к), 703(к), 303(к), 302(к), 411(д) и празна(д/к).

Попълваме участващите във фактурата стоки, артикули и материали съответно по сметки 304. Стоки, 303. Продукция и 302. Материали, като потвърждаваме предложената ни цена (средна доставна цена без ДДС на наличното количество), а след сумата попълваме в полето "Уточнение" продажната цена с ДДС.
Ако оставим полето Уточнение празно, макросът ще използва за продажна цена с ДДС полето Цена на дребно (ценово ниво 0) от номенклатурата.
Ако попълним в полето "Уточнение" отрицателно число, макросът ще го използва като процент отстъпка от продажната цена с ДДС записана в полето "Цена на дребно (ценово ниво 0)" от номенклатурата.
Ако фактурата е дебитно известие, редовете за смяна само на цените се осчетоводяват вместо по сметки 304, 303 и 302, по 702. Приходи от продажби на стоки, 701. Приходи от продажби на продукция и 707. Приходи от продажби на материали с нулево количество.

Ако има, попълваме и участващите във фактурата услуги по сметка 703. Приходи от продажби на услуги по продажни цени с ДДС.

Попълваме задължителните поднива на сметка 411. Клиенти като в полето "№ на документа" попълваме "-" (ако попълним число, макросът няма да работи адекватно). След изпълнението на макроса това поле ще се попълни с число равно на "начален номер на фактура" (записано в управляващ текст "1. Параметри", но без водещата единица) + номера на текущия документ в папката.
След натискане на Enter върху сумата на сметка 411, се появява прозорец с незадължителни полета:

След като завършим попълването, прозорецът с незадължителните полета на сметка 411 се скрива и с това приключваме ръчната работа по въвеждането на фактурата. Не попълваме други сметки (4532, 701, 702, 707) - ако е необходимо, те ще се попълнят автоматично (ако ги попълним, макросът няма да работи адекватно).
За да стартираме макроса, натискаме Alt+5 или бутона "5. Фактуриране".

Макросът счита, че документът е бил вече обработен и без да го променя ще отиде направо на печат, ако е изпълнено някое от следните две условия:
1) има осчетоводяване по сметка 4532. Начислен данък за продажбите,
2) полето "Вид на документа" е попълнено с номер 1, 2 или 3 и "№ на документа" е ненулево число.

В противен случай, макросът ще извърши автоматични доосчетоводявания и ще попълни полетата както е описано по-горе.

Следователно макросът няма да работи адекватно в следните два примера:
1) ако попълним в нов документ сметка 4532,
2) ако попълним в нов документ "Вид на документа" с 1 и "№ на документа" с някакъв валиден номер (например 0000140005).

А сега ще онагледим доосчетоводяванията, които извършва макросът. Пример на нов документ преди стартиране на макроса:

дебит кредит количество цена сума д-т сума к-т уточнение цена на дребно
  303 10 2.50 (средна доставна баз ДДС)   25.00 3.60 (продажна цена с ДДС) няма значение
  304 5 4.00 (средна доставна без ДДС)   20.00   7.20 (продажна цена с ДДС)
  703 1 48.00 (продажна с ДДС)   48.00    
411       93.00      

Нека сме оставили полето "Вид на документа" празно. След стартиране на макроса, документът придобива следния вид:

дебит кредит количество цена без ДДС сума д-т сума к-т уточнение  
  303 10 2.50 (средна дост.)   25.00 3.60  
701   10 2.50 (средна дост.) 25.00   3.60  
  304 5 4.00 (средна дост.)   20.00    
702   5 4.00 (средна дост.) 20.00      
  701 10 3.00 (продажна)   30.00    
  702 5 6.00 (продажна)   30.00    
  703 1 40.00 (продажна)   40.00    
  4532       20.00    
411       120.00      

След като попълни документа, макросът подготвя фактурата за печат. Ако искаме да я изпечатаме, натискаме бутона "2. Печат".
За осчетоводяване на плащането и издаване на ПКО (приходен касов ордер), натискаме бутона "7. ПКО".
Ако искаме да променим някое от полетата, които макросът автоматично е попълнил, връщаме се в документа и ги поправяме, след което натискаме бутона "5. Фактуриране" за да се нарисува фактурата за печат.

Следващите стъпки са описани в Печат на вече попълнена фактура.

За програмистите на "СиПиЪкаунтинг" са предназначени обясненията в Описание на макроса.
Към началото на Фактуриране.


Въвеждането и печата на фактура БЕЗ ИЗПИСВАНЕ по сметки 302, 303 и 304 се извършва в следната последователност:

Влизаме в нов документ на папката за фактуриране (която считаме, че е от тип фактуриране без изписване). Ако за първи път фактурираме в нов месец, влизаме в документ с номер равен на последния документ в папката с фактурите от предния месец + 1. Това е така защото поредният номер на фактурата се изчислява да е равен на "номера на документа в папката" + "начален номер на фактура" (записан в управляващ текст "1. Параметри", но без водещата единица). Ако стигнем до документ с номер 9999, продължаваме с номер 1, но преди това поправяме "начален номер на фактура" да е равен на десетцифрения номер (евентуално с водещи нули) на последната фактура и залепена водеща единица отпред.
Въпросът с номерацията на фактурите, а и всичко останало, е решен много по-елегантно в универсалния пакет "Уни".

Попълваме, ако желаем, антетката на документа (това не е задължително, но за датата е препоръчително), след което се появява прозорец със следните сметки: 702(к), 703(к), 701(к), 707(к), 411(д) и празна(д/к).

Попълваме по продажни цени с ДДС участващите във фактурата стоки, услуги, артикули и материали съответно по сметки 702, 703, 701 и 707. Те са дефинирани да предлагат продажната цена с ДДС записана в полето "Цена на дребно (ценово ниво 0)" от номенклатурата, която може да променим.
Ако попълним в полето Уточнение на сметка 702. Приходи от продажби на стоки, 701. Приходи от продажби на продукция или 707. Приходи от продажби на материали отрицателно число, макросът ще го използва като процент отстъпка от цената попълнена в сметката.

Не попълваме сметка 4532. Начислен данък за продажбите - тя ще се попълни автоматично (ако я попълним, макросът няма да работи адекватно).

Попълваме задължителните поднива на сметка 411. Клиенти като в полето "№ на документа" попълваме "-" (ако попълним число, макросът няма да работи адекватно). След изпълнението на макроса това поле ще се попълни с число равно на "начален номер на фактура" (записано в управляващ текст "1. Параметри", но без водещата единица) + номера на текущия документ в папката.
След натискане на Enter върху сумата на сметка 411, се появява прозорец с незадължителни полета:

След като завършим попълването, прозорецът с незадължителните полета на сметка 411 се скрива и с това приключваме ръчната работа по въвеждането на фактурата. За да стартираме макроса, натискаме Alt+5 или бутона "5. Фактуриране".

Макросът счита, че документът е бил вече обработен и без да го променя ще отиде направо на печат, ако е изпълнено някое от следните две условия:
1) има осчетоводяване по сметка 4532,
2) полето "Вид на документа" е попълнено с номер 1, 2 или 3 и "№ на документа" е ненулево число.

В противен случай, макросът ще извърши автоматични доосчетоводявания и ще попълни полетата както е описано по-горе.

Следователно макросът няма да работи адекватно в следните два примера:
1) ако попълним в нов документ сметка 4532,
2) ако попълним в нов документ "Вид на документа" с 1 и "№ на документа" с някакъв валиден номер (например 0000140005).

А сега ще онагледим доосчетоводяванията, които извършва макросът. Пример на нов документ преди стартиране на макроса:

дебит кредит количество продажна цена с ДДС сума д-т сума к-т
  701 10 3.60   36.00
  702 5 7.20   36.00
  703 1 48.00   48.00
411       120.00  

Нека сме оставили полето "Вид на документа" празно. След стартиране на макроса, документът придобива следния вид:

дебит кредит количество продажна цена без ДДС сума д-т сума к-т
  701 10 3.00   30.00
  702 5 6.00   30.00
  703 1 40.00   40.00
  4532       20.00
411       120.00  

След като попълни документа, макросът подготвя фактурата за печат. Ако искаме да я изпечатаме, натискаме бутона "2. Печат".
За осчетоводяване на плащането и издаване на ПКО (приходен касов ордер), натискаме бутона "7. ПКО".
Ако искаме да променим някое от полетата, които макросът автоматично е попълнил, връщаме се в документа и ги поправяме, след което натискаме бутона "5. Фактуриране" за да се нарисува фактурата за печат.

Следващите стъпки са описани в Печат на вече попълнена фактура.

За програмистите на "СиПиЪкаунтинг" са предназначени обясненията в Описание на макроса.

При този вариант на фактуриране изписването на стоки по сметка 304. Стоки може да се извърши наведнъж в един документ с макрос "24. Изписване на сметка 304".
След като натиснем бутона "1. Недостиг 304-702", макросът първо проверява за недостатъчни количества по сметка 304 както това прави макрос "58. Недостиг на стоки (304-702)".
В случай, че за някоя стока количественото салдо по сметка 702. Приходи от продажби на стоки (то е кредитно) е по-голямо от количественото салдо по сметка 304 (то е дебитно), това се показва на справка и се предлага да се извърши изписването на стоките, които не са "на червено" с натискане на новопоявилия се бутон "1. Изписване".
Ако няма стоки "на червено", както и ако натиснем бутона "1. Изписване", макросът изписва всички стоки, които не са "на червено".

Към началото на Фактуриране.


За да ИЗПЕЧАТАМЕ вече попълнена фактура, влизаме в документа и натискаме Alt+5 или бутона "5. Фактуриране".

Ако документът не е попълнен правилно, макросът няма да даде очакваните резултати.
Ако документът е бил попълнен чрез
Въвеждане и печат на фактура БЕЗ изписване по сметки 302, 303 и 304 или чрез
Въвеждане и печат на фактура С изписване по сметки 302, 303 и 304,
на екрана се появява фактурата в режим на текстов редактор.

В нея са попълнени данните от сметка 411. Клиенти, включително МОЛ и Получил (а не от номенклатурата на клиента). Така, ако влезем в стар документ, а междувременно са се сменили в номенклатурата на клиента МОЛ или Получил, те ще се появят във фактурата със старите си стойности.
Ако в данните на сметка 411 полето Получил е празно, за негова стойност се взема полето МОЛ.

Може да променим фактурата в режим на текстов редактор.

След като редактираме фактурата, може да натиснем бутона "2. Печат". Така разпечатваме първия екземпляр, на който, ако фактурата е данъчна, пише ОРИГИНАЛ. При следващи натискания на бутона "2. Печат" се отпечатват останалите екземпляри.

Следващите стъпки са описани в Осчетоводяване на плащането и издаване на ПКО.

За програмистите на "СиПиЪкаунтинг" са предназначени обясненията в Описание на макроса.
Към началото на Фактуриране.


За да осчетоводим плащането и издадем ПКО (приходен касов ордер), след като изпечатаме фактурата, натискаме бутона 7. ПКО.

Макросът тръгва по едно от следните три разклонения:

За програмистите на "СиПиЪкаунтинг" са предназначени обясненията в Описание на макроса.

Към началото на Фактуриране.


Описание на макрос "18. Фактуриране":

След като сме попълнили данните за фактурата или сме влезли в обработена вече фактура и натиснем Alt+5 или бутона "5. Фактуриране" макросът извършва:

Към началото на Фактуриране.

Изписване

Тущ ще разгледаме изписването на артикули, стоки, материали, ДМА.

Вж. Фактуриране.

В момента се подготвя нова версия.

Плащане от клиент, ПКО

Тук няма да разглеждаме широкото разнообразие от варианти и удобства в универсалния пакет "Уни".
В тиражираната версия на модул "Счетоводство" на програма CPAccounting® са подготвени няколко макроса свързани с плащанията от клиенти.

Осчетоводяването на плащането по сметка 411. Клиенти може да се извърши:

Изпечатването на приходен касов ордер (може и не само по сметка 411) се извършва чрез макрос 35. ПКО - печат.


Може да заредим макрос "26. Плащане от клиент" ръчно или като влезнем в папка от някой от следните типове:

Ако стартираме макроса без да сме избрали папка в точката "Въвеждане и редактиране на документи", ще излезне кошче със съобщението:
Натиснете F10 (главното меню),
"1. Въвеждане данни" и оттам "1. Документи".
После изберете ПАПКА и документ и стартирайте макроса отново.

Първо макросът предлага да изберем клиент и сумата, която плаща.
В полето за избор на клиент е предложен последният клиент, с който сме работили.
Ако изведем на екран списък с клиентите, в последната колона ще видим салдото на всеки клиент. Само за програмистите на "СиПиЪкаунтинг": предно изречение ще е вярно, ако има индексен файл B4112.IDX (вж. т.2.в. от обясненията за знак ^ в режим на табулация).
Сумата за плащане, освен положително число, може да бъде 0 или отрицателно число.

След като натиснем бутона "1. Продължение" макросът прави справка по сметка 411. Клиенти за неплатените документи на избрания клиент (таблица 201, в режим на акумулиране, сортиране по падеж, с отделно натрупване на сумите по дебита и по кредита чрез сумиране със знака +). Ако справката се окаже празна, излиза съобщението "Няма неплатени документи" и обработката приключва.
След това отива на справка акумулирана, зарежда таблица 202 и стартира справката.

Макросът спира на екран за въвеждане на данни, на който са всички неплатени документи, подредени по дата на падеж с предложение за всеки документ с каква сума да се плати (закрие), така че общата сума да е равна на попълнената в началото сума за плащане.
Ако едновременно има документи с дебитни и кредитни салда, преди да разпредели сумата за плащане, макросът се опитва да ги закрие взаимно.
Ако сме посочили по-голяма сума за плащане от общото задължение на клиента (сумата на документите с дебитно салдо минус сумата на документите с кредитно салдо), макросът предлага да се плати само задължението му.
Алгоритъмът, който изпълнява цялата тази логика е следният:

Може да променим предложените от макроса числа. За да се преизчисли сумата им, може да натиснем бутона "2. Преизчисли сумата".
Може да натиснем и бутона "9. Стъпка назад".
След като сме готови, натискаме "1. !Осчетоводи". Макросът осчетоводява плащанията в текущия документ.
След като свърши работата си, макросът зарежда указания в типа на папката макрос, а ако няма такъв - себе си.

Към началото на Плащане от клиент, ПКО.


За да се зареди макрос "35. ПКО - печат", трябва да влезнем в папка от някой от следните типове:

Макросът подготвя ПКО (приходен касов ордер) за печат в зависимост от това дали има осчетоводяване по кредита на сметка 411. Клиенти:

Към началото на Плащане от клиент, ПКО.


За да се зареди макрос "68. Масово плащане по каса 501/411", трябва да влезнем в папка от тип "масово плащане по каса 501/411" (с прикрепен макрос 68).
Макросът автоматично осчетоводява плащането по каса на всички партиди по сметка 411, които са възникнали в текущия месец и са изцяло неплатени. Осчетоводяването се извършва в папката указана в управляващ текст "1. Параметри". Осчетоводяването се извършва в последователни документи след последния в папката. В един документ от папката се осчетоводяват всички партиди по сметка 411. Клиенти от една дата срещу сметка 501. Каса в лева.

Към началото на Плащане от клиент, ПКО.