Формирование отчета по excel шаблону

Автор:Uvarov
Дата:16.11.2004
Просмотров:3018
Скачиваний:787
Оценка:, Оценок - 2
Скачать (rar-файл; Размер - 12149)

Обсудить в форуме

Описание

Мысль:
На первой странице элзеля в колонке A- распологаются формулы для расчета, в В-выводится результат расчета
Ну а на других листах (2,3....) печатные формы использующие данные с первого листа.Ни чего нового.

В колонке а пишутся формулы через запятую, типа: П40702,П40703-40704,П408,А20202810100000000001
Вычисленные значания суммируются.

Доступные функции:
Балансовые счета

А-исходящие остатки по активным счетам
НА-Входящие остатки по активным счетам
П-исходящие остатки по пассивным счетам
НП-Входящие остатки по пассивным счетам
АП-Свернутый исходящий остаток со знаком
НАП-Свернутый входящий остаток со знаком
САП-Сумма исходящих остатков по активным и пассивным счетам
НСАП-Сумма входящих остатков по активным и пассивным счетам
Д-Дебетовые обороты
ДА -Дебетовые обороты активных счетов
ДП-Дебетовые обороты пассивных счетов
К-Кредитовые обороты
КА -Кредитовые обороты активных счетов
КП-Кредитовые обороты пассивных счетов

Внебалансовые счета

ВА-исходящие остатки по активным счетам
ВНА-Входящие остатки по активным счетам
ВП-исходящие остатки по пассивным счетам
ВНП-Входящие остатки по пассивным счетам
ВАП-Свернутый исходящий остаток со знаком
ВНАП-Свернутый входящий остаток со знаком
ВСАП-Сумма исходящих остатков по активным и пассивным счетам
ВНСАП-Сумма входящих остатков по активным и пассивным счетам
ВД-Дебетовые обороты
ВДА -Дебетовые обороты активных счетов
ВДП-Дебетовые обороты пассивных счетов
ВК-Кредитовые обороты
ВКА -Кредитовые обороты активных счетов
ВКП-Кредитовые обороты пассивных счетов

Прочие функции

Дата1 - Начало периода(из формы ввода)
Дата2 - Конец периода(из формы ввода)


Легко добавляются новые функции:

//Сама функция
PRIVATE MACRO НАктив(from,to)
VAR stat;
Acc.Rec.Account=from;
stat=Acc.GetGE();
rc=$0;
while(stat AND (Substr(Acc.Rec.Account,1,StrLen(to))<=to))
if(trim(Acc.Rec.Kind_Account)=="А")
rc=rc+ABS(RestA(Acc.Rec.Account,Dlg.DtBegin-1));
end;
stat=Acc.Next();
end;
END;/*END MACRO*/
//Добавление в список доступных функций
// Префикс Адрес функции
AddProc("НА",@НАктив);

Во все функции передаются два параметра c какого счета (from) и по какой счет (to)
например НА20202 --> from="20202", to="20202";
НА20202-30110 --> from="20202", to="30110";

НАСТРОЙКА:
в файле RepXLS.mac(он же и запускается)

//Путь к шаблонам
//Должен быть доступен с терминала
PRIVATE VAR PathTempl="L:\\!Шаблоны\\rep_xls\\";

//Имена файлов шаблонов
PRIVATE ARRAY aFiles;
aFiles(0)="Финансовые результаты на дату.xlt";
aFiles(1)="Отчет 2.xlt";
...
aFiles(n)="Отчет n.xlt";