Аналитики в сальдо за месяц

Администрирование баз данных (Pervasive.SQL, MS SQL, Oracle, утилита Support)

Модераторы: m0p3e, edward_K, Модераторы

Ответить
renat
Посетитель
Сообщения: 38
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Россия Россия

Аналитики в сальдо за месяц

Сообщение renat »

Ситуация:
надо получить таблицу в текстовом виде

счет субсчет дебет/кредит кау1 кау2 кау3

кау - это ссылки на записи в других таблицах, а надо чтобы были стороковые значения из соответствующих таблиц. Зная аналитику на конктретном счет-субсчет я могу SQL запросом сделать выборку. А как это сделать автоматически? Поле которое идет в аналитику в разных таблицах разное (NAME, NAMEOS и другие). Где галактика сама "смотрит" кокое поле из какой таблицы использовать для отображения аналитики?
???
смотрел таблицы saldmoun, katkau, x$files
НЕТ
DarkGreen
Постоянный гость
Сообщения: 89
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахсктан Аксуский завод ферросплавов
Контактная информация:

Re: Аналитики в сальдо за месяц

Сообщение DarkGreen »

тебя интересует таблица KATHOZD (каталог хозяйственой деятельности) начиная с записей следующих после записи у которой поле NAME иммет значение === НЕ ИСПОЛЬЗУЕТСЯ ===
Значение-Таблица-Поле
1 - KATORG - NAME
2 - KATPODR - NAME
3 - PERSONS - FIO
4 - KATMC - NAME
5 - KATUSL - NAME
6 - BASEDOC - NAME
15- KATOS - NAMEOS
16- KATOS - NAMEOS
Deinis
Местный житель
Сообщения: 783
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Москва
Контактная информация:

Re: Аналитики в сальдо за месяц

Сообщение Deinis »

Сальдо получить не так уж сложно. Вот получить значения КАУ в проводках - уже сложнее:
http://www.tyumbit.ru/galaktika/read.ph ... 073&t=2073

Что касается таблицы сальдо:
SaldMoun.TblOS[i] -> KatKau.KodGroup
А KatKau.CoTable -> порядковый номер таблицы (но по-моему, не всегда это так).
SaldMoun.KAUOS[i] -> nRec записи в соответствующей таблице.
Все записи аналитик лежат либо в SpKAU - это "Пользовательская аналитика", либо в соответствующих системных таблицах (см. их номера в поле KatKau.CoTable)
IgorA
Постоянный обитатель
Сообщения: 192
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Красноярск

Re: Аналитики в сальдо за месяц

Сообщение IgorA »

Это какой же запрос будет, если подключить
100 системных справочников плюс пользовательский спр.?
DarkGreen
Постоянный гость
Сообщения: 89
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Казахсктан Аксуский завод ферросплавов
Контактная информация:

Re: Аналитики в сальдо за месяц

Сообщение DarkGreen »

Дебильный, но мы не пользуемся сиквелом для Первасива, а работаем с базами Галактическими через Btrieve API ;)
Goblin
Местный житель
Сообщения: 474
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Сибирь-матушка
Контактная информация:

Re: Аналитики в сальдо за месяц

Сообщение Goblin »

Запроса не будет ...
потому как построить такой - невозможно ...
а галактика смотрит просто :
в логической табле фейса только обороты, план счетов, всякая настроечная мелочь типа корреспонденции,кодов аналитики по счетам ..

а вот само поле аналитики - это сумма функций получения имени по настройке в schetkau и katkau из того в что в kauos[i] и tblos[i] у saldmoun и oborot стоит . со здоровенным таким case'ом (если нет функций присвоения значения полю таблицы по ее коду) или не очень большим (если такие функции есть - но я их не знаю и доках не видел) ...
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
stranger1970
Постоянный гость
Сообщения: 76
Зарегистрирован: 29 мар 2005, 17:49

Re: Аналитики в сальдо за месяц

Сообщение stranger1970 »

Личный опыт

function GetKau(TabKau:word; RecKau:comp; VidKau:string[2]; LenKauCod:word;LenKauNam:word): String;
/***************************************************************************
Функция возращает код или наименование КАУ
****************************************************************************
TabKau Ссылка на группу КАУ
RecKau NREC КАУ
VidKau КАУ Код ("k") Имя ("i") Код+Имя ("ki")
LenKauCod Длинна Кода КАУ в символах
LenKauNam Длинна Имя КАУ в символах
***************************************************************************/
var
KauNames, KauCodes : String;
begin
KauNames:='';
KauCodes:='';
If(TabKau>=100)
{ if (modifier GetFirst SpKau where ((RecKau==SpKau.Nrec)) = tsOk)
{KauNames:=SpKau.Name; KauCodes:=Trim(SpKau.Code); }
else
{KauNames:=''; KauCodes:=''; }
}
else
{
Case TabKau of
1: {if (modifier GetFirst KatOrg where ((RecKau==KatOrg.Nrec)) = tsOk)
{KauNames:=Katorg.Name; KauCodes:=Trim(Katorg.Okpo); }
else
{KauNames:=''; KauCodes:=''; }
}
2: {if (modifier GetFirst KatPodr where ((RecKau==KatPodr.Nrec)) = tsOk)
{KauNames:=KatPodr.Name; KauCodes:=Trim(KatPodr.Kod); }
else
{KauNames:=''; KauCodes:=''; }
}
3: {if (modifier GetFirst Persons where ((RecKau==Persons.Nrec)) = tsOk)
{KauNames:=Substr(fios(Persons.FIO),1,14); KauCodes:=Replace(LPad(String(Persons.Tabnmb),5),' ','0'); }
else
{KauNames:=''; KauCodes:=''; }
}
4: {if (modifier GetFirst KatMc where ((RecKau==KatMc.Nrec)) = tsOk)
{KauNames:=KatMc.Name; KauCodes:=Trim(KatMc.BarKod);}
else
{KauNames:=''; KauCodes:=''; }
}
end; // case
}

GetKau:=''
Case Trim(VidKau) of
'k': GetKau:=Substr(KauCodes,1,LenKauCod);
'K': GetKau:=Substr(KauCodes,1,LenKauCod);
'i': GetKau:=Substr(KauNames,1,LenKauNam);
'I': GetKau:=Substr(KauNames,1,LenKauNam);
'ki': GetKau:=Substr(KauCodes,1,LenKauCod)+' '+Substr(Trim(KauNames),1,LenKauNam);
'KI': GetKau:=Substr(KauCodes,1,LenKauCod)+' '+Substr(Trim(KauNames),1,LenKauNam);
end;
end;
Ответить