The 1C:Enterprise developers forum

#1
People who like this: 0 Yes / 0 No
Active user
Rating: 5
Joined: Sep 27, 2011
Company:

Hello!
I have a catalog with two attributes: Area and AverageCost. And an information register with Area dimension and AverageCost resource. I need to display in catalog item form when the Area field is changed the AverateCost to be filled automatically.

I did the following:
- Created a common module AverageCostEvaluation
- Wrote a function in this module:

Function GetAverageCost(ContractDate, Area) Export
Filter = New Structure("Area", Area);
ResourceValues = InformationRegisters.AverageCostByAreas.SliceLast(ContractDate, Filter);
If ResourceValues.Count() = 1 Then
Return ResourceValues.AverageCost;
Else
Return 0;
EndIf;
EndFunction
In the catalog form module I wrote the following procedure:

&AtClient
Procedure AreaOnChange(Item)
ContractDate = CurrentDate();
AreaField = String(Object.Area);
Object.AverageCost = AverageCostEvaluation.GetAverageCost(ContractDate, AreaField);
EndProcedure

It produces no errors, but AverageCost field is not filled with value when Area is changed.

Thanks in advance.

 
#2
People who like this: 0 Yes / 0 No
Active user
Rating: 3
Joined: Sep 16, 2011
Company: individual

Why do you use this line?
AreaField = String(Object.Area);
It makes types not match, use
AreaField = Object.Area;

 
Subscribe
Users browsing this topic (guests: 1, registered: 0, hidden: 0)
Be the first to know tips & tricks on business application development!

A confirmation e-mail has been sent to the e-mail address you provided .

Click the link in the e-mail to confirm and activate the subscription.

/* Улучшаем читаемость списков в документации */ .workarea ul, .content ul { margin: 15px 0 20px 25px !important; padding: 0 !important; list-style-type: disc !important; } .workarea li, .content li { margin-bottom: 8px !important; padding-left: 5px !important; line-height: 1.6 !important; } /* Ультимативный фикс для всех уровней заголовков в контенте */ .workarea h1, .workarea h2, .workarea h3, .workarea h4, .workarea h5, .workarea h6, .content h1, .content h2, .content h3, .content h4, .content h5, .content h6, div[id*="content"] h5, div[class*="content"] h5 { display: block !important; font-weight: 700 !important; color: #005aa0 !important; /* Наш фирменный синий */ text-transform: none !important; margin-top: 30px !important; margin-bottom: 15px !important; line-height: 1.2 !important; font-family: Arial, sans-serif !important; } /* Принудительные размеры в пикселях (чтобы не зависеть от % или em) */ .workarea h1, .content h1 { font-size: 28px !important; } .workarea h2, .content h2 { font-size: 24px !important; } .workarea h3, .content h3 { font-size: 21px !important; } .workarea h4, .content h4 { font-size: 19px !important; } .workarea h5, .content h5 { font-size: 18px !important; } /* Для 5 решеток ##### */ .workarea h6, .content h6 { font-size: 16px !important; } /* Фикс, если Битрикс добавил лишние отступы перед списками после заголовка */ .workarea h5 + ul, .content h5 + ul { margin-top: 5px !important; }