У меня есть страница Vf, которая показывает список в теге apex: repeat. Все поля отображаются как apex: inputfield. Есть 2 поля
- количество__c
- Change__c
Я хочу проверить, если количество изменилось, то я хочу, чтобы поле изменения
быть заполненным / обязательным. Могу ли я сделать эту проверку на уровне VF?
Есть ли другой способ сделать это?
Спасибо
Обновление: вот код, который я использую, как предложено LaceySnr. Я вижу, что сообщение apex выбрасывается в журнал отладки, но его не видно в Vfpage
for (integer i=0;i<List_FinalStdItems.size();i++)
{
system.debug('inside loop to check quantity is changed');
ItemSet.add(List_FinalStdItems[i].id);
system.debug('New quantity'+List_FinalStdItems[i].quantity__c +' old quantity'+MapStdItemsOldMap.get(List_FinalStdItems[i].id).quantity__c);
// system.debug('old quantity'+MapStdItemsOldMap.get(List_FinalStdItems[i].id).quantity__c);
if (MapStdItemsOldMap.get(List_FinalStdItems[i].id).quantity__c!=List_FinalStdItems[i].quantity__c)
{
system.debug('This quantity for item '+List_FinalStdItems[i].Name+ ' has changed');
if(List_FinalStdItems[i].Inventory_Change_Reason__c==null || List_FinalStdItems[i].Inventory_Change_Reason__c=='')
{
system.debug('This quantity for item '+List_FinalStdItems[i].Name+ ' has changed and Reason for change is empty');
ApexPages.addMessage(new ApexPages.Message(ApexPages.Severity.ERROR,'Reason for change not entered for changed Quantity'));
error=true;
}
}
}
01:04:55.541 (541902000)|SYSTEM_METHOD_ENTRY|[151]|ApexPages.addMessage(ApexPages.Message)
01:04:55.541 (541985000)|VF_PAGE_MESSAGE|Reason for change not entered for changed Quantity
01:04:55.542 (542008000)|SYSTEM_METHOD_EXIT|[151]|ApexPages.addMessage(ApexPages.Message)
Редактировать
<apex:outputpanel id="mess">
<apex:pageMessages />
</apex:outputpanel>
.
.
.
<apex:actionFunction name="save" action="{!Save}" rerender="mess"/>