Hello Experts,
I have added to extra fields in primary office bizcard for address (SAP ESS) iview.
The fileds show up in a new bizcard for primary office under the bizcard for primary address and everything works fine.
but, when I add a primary address with future date.
All fields in bizcard of primary office do not show up.
just want to be clear on the layout
I have 2 bizcards one for primary home and other primary office.
In primarry home if I add a home address which is valid with future date. The data is not shown in the bizcard of primary office.
Below is the code WDdomodify code and and code which populates the primary office biz card. can any one please look into it and show where its goign wrong.
====
public static void wdDoModifyView(IPrivateBizCardsView wdThis, IPrivateBizCardsView.IContextNode wdContext, com.sap.tc.webdynpro.progmodel.api.IWDView view, boolean firstTime)
{
//@@begin wdDoModifyView
BizcardFieldInfo[] fieldInfo;
//Date defaultBegda = wdContext.currentContextElement().getDefault_Begda();
String bizcardField1 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField1");
String bizcardField2 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField2");
String bizcardField3 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField3");
fieldInfo = new BizcardFieldInfo[] { new BizcardFieldInfo(bizcardField1, "Stras"),
new BizcardFieldInfo(bizcardField2, "Ort01"),
new BizcardFieldInfo(bizcardField3, "Telnr")};
// OverviewHelper.CreateOverview(wdThis.wdGetContext().nodeInfotypeList(),
// wdThis.wdGetContext().nodeSubtypes(),
// view,
// fieldInfo,
// defaultBegda,
// "Anssa");
wdThis.wdGetFcPersInfoInterface().CreateOverview(
wdThis.wdGetContext().nodeInfotypeList(),
view,
fieldInfo,
"Anssa");
// Retrieve Bizcards information for Primary Office Subtype:
try
{
IWDNode nodeInfotypes = wdThis.wdGetContext().nodeInfotypeList();
IWDNode nodeSubtypes = wdThis.wdGetContext().nodeSubtypes();
final int iPrimaryOfficeSubtype = 10; // Primary Office Subtype = 10
String sPrimaryOfficeStext = "";
// Get Stext information for Primary Office Subtype:
for (int i = 0; i < nodeSubtypes.size(); i++)
{
String sCurrentSubtype = nodeSubtypes.getElementAt(i).getAttributeValue("Subtype").toString();
int iCurrentSubtype = Integer.parseInt(sCurrentSubtype);
if (iCurrentSubtype == iPrimaryOfficeSubtype)
{
sPrimaryOfficeStext = nodeSubtypes.getElementAt(i).getAttributeValue("Stext").toString();
break;
}
}
// Find bizcard for Primary Office Subtype:
boolean bIsBizCardFound = false;
int iBizCardLocation = 0;
for (int i = 0; i < nodeInfotypes.size(); i++)
{
IWDGroup groupBizCard = (IWDGroup) view.getElement("bizcard_" + i);
String sBizCardStext = groupBizCard.getHeader().getText();
if (sBizCardStext.equalsIgnoreCase(sPrimaryOfficeStext))
{
iBizCardLocation = i;
bIsBizCardFound = true;
break;
}
}
// Add new Labels and Textviews for Primary Office Subtype:
if (bIsBizCardFound)
{
AddNewPrimaryOfficeContent (wdThis, nodeInfotypes, view, iBizCardLocation);
}
}
catch (Exception ex)
{
}
//@@end
}
private static void AddNewPrimaryOfficeContent(IPrivateBizCardsView wdThis, IWDNode nodeInfotypes, IWDView view, int iBizCardLocation)
{
if (iBizCardLocation < 0)
{
return;
}
// String BizcardField1 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField1"); // c/o
// String BizcardField2 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField2"); // Relationship
String BizcardField3 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField3"); // House #
String BizcardField4 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField4"); // City
String BizcardField5 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField5"); // State
String BizcardField6 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField6"); // Zip Code
String BizcardField7 = wdThis.wdGetAPI().getComponent().getTextAccessor().getText("BizcardField7"); // PObox
BizcardFieldInfo[] fieldInfo;
fieldInfo = new BizcardFieldInfo[] {
// new BizcardFieldInfo(BizcardField1, "Name2"), // c/o
// new BizcardFieldInfo(BizcardField2, "Locat"), // Relationship
new BizcardFieldInfo(BizcardField3, "Stras"), // House #
new BizcardFieldInfo(BizcardField4, "Ort01"), // City
new BizcardFieldInfo(BizcardField5, "State"), // State
new BizcardFieldInfo(BizcardField6, "Pstlz"), // Zip Code
new BizcardFieldInfo(BizcardField7, "Zpo_box") //pobox
// Mail Description
};
IWDNodeElement elementRecord = nodeInfotypes.getElementAt(iBizCardLocation);
IWDGroup groupBizCard = (IWDGroup) view.getElement("bizcard_" + iBizCardLocation);
groupBizCard.destroyAllChildren();
IWDGridLayout grid = (IWDGridLayout) groupBizCard.getLayout();
grid.setColCount(2);
for (int k = 0; k < fieldInfo.length; k++)
{
IWDLabel labelView = (IWDLabel) view.createElement(IWDLabel.class, "labelView" + iBizCardLocation + k);
labelView.setText(fieldInfo[k].label);
IWDGridData labelGridData = (IWDGridData) labelView.createLayoutData(IWDGridData.class);
labelGridData.setWidth("100px");
labelView.setWidth("35%");
IWDTextView textView = (IWDTextView) view.createElement(IWDTextView.class, "textView" + iBizCardLocation + k);
textView.setText(elementRecord.getAttributeValue(fieldInfo[k].fieldname).toString());
groupBizCard.addChild(labelView);
groupBizCard.addChild(textView);
}
}
====
Thanks,
Boiler