Страница 1 из 1

Проблемы при докомпиляции

Добавлено: 02 сен 2011, 14:21
Nikos
Добрый день!
Возникла задача сведения об образовании прицепить к таблице CATALOGS (дать возможность прицеплять). Выполнил докомпиляцию интерфейса, вывел конфигуратором поле. Все хорошо работает, если править существующие записи об образовании. Если же добавить новую запись и попытаться тут же прицепить ее к новой таблице, то ничего не получается. Как правильно работать с новыми записями? Вот почти работающий код:

Код: Выделить всё

#component 'Z_STAFF'

alter interface RECWIN02
create view
as select PlanEducation.name
from synonym Catalogs PlanEducation
where ((EDUCATION.CREF1 == PlanEducation.NREC));

HandleEvent 
  cmPick:
  {
    case CurField of
      #PLANEDUCATION.NAME : 
      {
        RunInterface(GetPlanEdu, PERSONS.NREC, EDUCATION.CREF1);
        if isnew()
					insert current EDUCATION;
				else
          update current EDUCATION;
        RereadRecord;
      }
    end;
    inherited::HandleEvent(cmPick);
  }
end;
end.

Re: Проблемы при докомпиляции

Добавлено: 02 сен 2011, 14:53
Nikos
Разобрался - RereadRecord все портил. Вот так все работает:

Код: Выделить всё

#component 'Z_STAFF'

alter interface RECWIN02
create view
as select PlanEducation.name
from synonym Catalogs PlanEducation
where ((EDUCATION.CREF1 == PlanEducation.NREC));

HandleEvent 
  cmPick:
  {
    case CurField of
      #PLANEDUCATION.NAME : 
      {
        if not isnew()
        {
          RunInterface(GetPlanEdu, PERSONS.NREC, EDUCATION.CREF1);
          update current EDUCATION;
        }
        else
        {
          RunInterface(GetPlanEdu, PERSONS.NREC, EDUCATION.CREF1);
        }
      }
    end;
    inherited::HandleEvent(cmPick);
  }
end;
end.