دسترسی به ViewAccessor و مقداردهی Bind Variable تعریف شده بر روی LOV
RowSet rowSet = (RowSet)row.getAttribute("GuaranteeLOV1");
rowSet.setNamedWhereClauseParam("Bind_CustomerId", new Number(customerId));
منبع : AdfTips.com (نویسنده : مورالی پاپانا)
RowSet rowSet = (RowSet)row.getAttribute("GuaranteeLOV1");
rowSet.setNamedWhereClauseParam("Bind_CustomerId", new Number(customerId));
منبع : AdfTips.com (نویسنده : مورالی پاپانا)
نکات مربوط به این فرم عبارتند از :
1.پیاده سازی متدها در VO مربوطه بجای AM برای کوچک تر شدن سایز AM
2.پیاده سازی LOV های مرتبط (cascade lov) , با استفاده از راهنمایی وبلاگ آرامامو
3.گرفتن confirmedId از instance قراردادی که از روی defenition مربوطه در کنسول حرفه ای وبلاجیک ایجاد شده است.
4.در اپلیکیشن نوع A که اینترفیس آن فاقد بی پی ام می باشد,پارامتر ورودی (confirmedId) بصورت دستی مقداردهی میشود.
5.در اپلیکیشن نوع B که اینترفیس آن مبتنی بی پی ام می باشد,پارامتر ورودی (confirmedId) از payload دریافت میشود.
UI اولیه مربوط به فرم قرارداد بصورت زیر می باشد:



af:outputText value="#{vs.index+1}" id="ot19"
DCIteratorBinding iter = ADFUtils.findIterator("NAME");
2.از Iterator , ویو آبجکت مربوطه را دریافت میکنیم
ViewObject voTableData = iter.getViewObject();
3.از ویو آبجکت , سطر جاری را دریافت میکنیم.
Row rowSelected = voTableData.getCurrentRow();
4.از ویو آبجکت , مقدار ویژگی مورد نظر را دریافت میکنیم.
Object xyz = rowSelected.getAttribute("NAME");
منبع :
سایت رسمی آقای John Brunswick
سناریو :
یک پیج اصلی داریم که داخل آن داریم دیتا رو مشاهده می کنیم (browse) و از داخل آن یک پیج دیگر را صدا میزنیم که بر اساس پارامتری که بهش پاس داده میشود , عملیات اضافه کردن (add) و یا ویرایش کردن (edit) رو انجام می دهیم. عملیات حذف (delete) شبیه به عملیات ویرایش می باشد.




ویژگی columnStretching را متناسب با هر ستونی که دوست داریم بصورت استرچ نمایش داده
شود را تنظیم می کنیم.
منبع : وبلاگ TangHao
Set Default Run Target to TaskFlow Activity
و دوست دارید این رویه رو تغییر بدین تا با کلیک بر روی این دکمه پروژه سریعاً اجرا بشه.
به وبلاگ maybe-interesting مراجعه کنید و مطابق مراحل گفته شده عمل کنید تا مشکل برطرف شود.