В карточке организации, на вкладке "Юридическая информация" есть поле "Руководитель", в поле вписать вручную имя ..
Судя по журнализации там какой-то бред в таблицу allmemo постоянно добавляются поля .. без удаления .. подобрал метод получения...
Den писал(а):Вроде в podrinfo это лежало а не в мемо. Может конечно поменяли что то недавно
метод GetDirectorName в OrganizationInfo.obj
там что-то хитрое .. в podrinfo пихается с какими-то символами псевдоразметки и только короткое.. не понял закономерности вставки ..
с GetDirectorName посмотрю, спасибо
Лучше всегда юзать объект. Мало ли - поля из PodrInfo частью например уже перекачевали в katorg - адреса например. А в AllMemo видимо пишется история. Чтобы не гадали вот последний вариант
//------------------------------------------------------------------------------
function GetNameByMet(met : char) : string; //Получение имен представителя,
{ //директора и бухгалтера
var i
,j
,k : byte;
var Names : string;
Names := PodrInfo.PostAddr;
j := 0;
k := 0;
j := inStr(met + ';',Names);
if (j = 0)
Result := ''
else
{
for ( i := j-1; i < length(Names); i++ )
if (Names[i+1] = '&')
{
k := i+1;
break;
}
if (k = 0)
k := length(Names) + 1;
Result := SubStr(Names, j + 2, k - j - 2);
}
}
//------------------------------------------------------------------------------
function GetBigBoss : string;
{
Result := GetNameByMet('B');
}
// руководитель (ссылка на физическое лицо)
function GetDirector: comp;
{
if (KATORG.cBoss = 0) and IsOwnOrganization
Result := coGetTune('Boss');
else
Result := KATORG.cBoss;
}
//ФИО
function GetDirectorName: string;
var nRec : comp;
{
nRec := GetDirector;
Result := '';
if (nRec <> 0)
{
if ( GetFirst Persons where (( nRec == Persons.nRec )) = tsOk )
Result := Persons.FIO;
}
else
Result := GetBigBoss;
}
var
Finder: IOrganizationInfoFinder; // загрузка информации об организации
var
Info: OrganizationJuridicalInfo; // юридические атрибуты организации
Finder := IOrganizationInfoFinder(Info); // загрузка информации об организации
Finder.Seek(katorg.nrec)
message(Info.GetDirectorName);