У меня есть финансовое измерение, с которым связываются такие значения, как BuildingID и ContractID.
Когда создается новое здание, измерение правильно заполняется данными. Но после этого необходимо создать контракт.
При создании договора в поле финансового измерения есть значение для contractID.
Но при сохранении договора финансовое измерение для идентификатора договора исчезает. Когда я проверяю в таблице значение DIMENSIONATTRIBUTEVALUESET для этого измерения ContractID является нулевым, есть только значение для BuildingID.
У меня есть этот метод для размеров инициализации:
void initDimensions()
{
DimensionDefault dimension;
PMGOrgDimension orgDimension;
CompanyId companyId;
PMEGround ground;
PMEBuilding building;
switch(pmcContract.EstateType)
{
case PMCEstateType::Ground :
ground = PMEGround::find(pmcContract.EstateId);
dimension = PMEObjectLegalEntity::find(ground.TableId, ground.RecId).DefaultDimension;
orgDimension = ground.OrgDimension;
companyId = ground.CompanyId;
break;
case PMCEstateType::Building :
building = PMEBuilding::find(pmcContract.EstateId);
dimension = PMEObjectLegalEntity::find(building.TableId, building.RecId).DefaultDimension;
orgDimension = building.OrgDimension;
companyId = building.CompanyId;
break;
default :
dimension = pmcContract.DefaultDimension;
orgDimension = pmcContract.OrgDimension;
companyId = pmcContract.CompanyId;
break;
}
pmcContract.DefaultDimension = dimension;
pmcContract.OrgDimension = orgDimension;
pmcContract.CompanyId = companyId;
}
Есть ли что-то, что я пропустил?