Значения столбца не отображаются - PullRequest
0 голосов
/ 04 ноября 2019

Надеюсь, у меня есть смысл. На нашем веб-сайте есть раздел «Глоссарий», в котором есть две категории категорий: «Страна» и «Апла» (то есть: A, B, C, D и т. Д.). Альфа-текст, однако, не отображается. Первое изображение - это то, что вы видите при первом входе на страницу. Второе изображение - это то, что вы получаете, когда расширяете страну. Обратите внимание, что текст aplhaSort не соответствует ожидаемому, как на макетах изображений 3 и 4.

1st pix is what you see when you open the page.

2nd pix is what you get when you expland the Country and the AplhaSort field text is not displaying as I would ike it to be (third and fourth mock up pictures

Я публикую свой код ниже. Код beforePageLoad вызывает функцию getExpandedLevel, а afterPageLoad должен заполнять данные.

function getExpandLevel(){
	var first = document1.getItemValueString("Continent") + "#" + sessionScope.LanguageP + "#" + document1.getItemValueString("Department");
	dBar.info("getExpandLevel ---- first=" + first);
	dBar.info("expandLevel=1")
	viewScope.expandLevel = "1"
}

afterPageLoad code:

//lookup the right country
var country = "USA";
dBar.info("browserL: "+ sessionScope.BrowserL)
	
// code below is if we are opening data based on preferred language
	switch (sessionScope.LanguageP) {
		case "americas-en":
			country = "USA";
			break;
		case "americas-es":
			country = "LATIN AMERICA";
			break;
		case "americas-ca":
			country = "CANADA";
			break;
		case "eme-de":
			country = "GERMANY"; 
			break;
		case "eme-en":
			country = "UK"; 
			break;
		case "eme-es":
			country = "SPAIN"; 
			break;
		case "eme-fi":
			country = "FINLAND"; 
			break;
		case "eme-fr":
			country = "FRANCE"; 
			break;
		case "eme-it":
			country = "ITALY"; 
			break;
		case "eme-nl":
			country = "NETHERLANDS"; 
			break;
		case "eme-se":
			country = "SWEDEN"; 
			break;
		case "ao-in":
			country = "INDIA"
			break;
		default:
			country = "USA";	
	}; 
dBar.info("country:  " + country);

var first =document1.getItemValueString("Continent") + "#"+ sessionScope.LanguageP + "#" + document1.getItemValueString("Department");
//var first = document1.getItemValueString("Continent") + "#" + sessionScope.BrowserL + "#" + document1.getItemValueString("Department");
//var first =document1.getItemValueString("Continent") + "#"+ sessionScope.LanguageP + "#" + document1.getItemValueString("Department")+"#"+document1.getItemValueString("alphaSort");
dBar.info("first  :" + first);
var viewName = "Definitions"
//var viewName="Glossary";
var dbName = configBean.getValue("HomeDbPath");
dBar.info("dbName: "+dbName);
var db = session.getDatabase(session.getServerName(), dbName,false );
if (db != null){
	var search = new java.util.Vector();
	search.add(first);
	dBar.info("country:  " + country);
	search.add(country);
	var vw:NotesView = db.getView(viewName);
	var ve:NotesViewEntry = vw.getEntryByKey(search);
	if (ve != null){
		dBar.info("position is " + ve.getPosition("."));
		var pos = @LeftBack(ve.getPosition("."), ".");
		dBar.info("computed position is " + pos);
		getComponent("dataView1").getDataModel().getDominoViewDataContainer().expand(pos);
		
	}else{
		dBar.info("view Entry is null");
	}
	} else {
		dBar.info("database not found");
}
Исходный код XPage:
        <!-- main content row -->
    <xp:panel styleClass="row contacts">
        <xp:panel
            id="panelContactsListing"
            styleClass="col-sm-6 scroll">
            <xe:widgetContainer
                id="widgetContainer1"
                titleBar="true"
                titleBarText="${langBean.titleTerms}"
                styleClass="glossary-listing">
                <xe:dataView
                    id="dataView1"
                    var="viewEntry"
                    openDocAsReadonly="true"
                    rows="999"
                    indexVar="idxVar">
                    <xp:this.facets>
                        <xp:panel
                            xp:key="categoryRow"
                            id="panel1">
                            <xp:text
                                escape="true"
                                id="computedField1"
                                value="#{viewEntry.Country}">
                            </xp:text>
                        </xp:panel>
                                <xp:div
                                xp:key="alphaSort"
                                id="alphaSortRow">
                                    <xp:text
                                        escape="false"
                                        id="computedField5"
                                        value="#{viewEntry.sort}">
                                    </xp:text>
                                </xp:div>
                        <xp:panel
                            xp:key="summary"
                            id="panelDetail1">
                            <xp:link
                                escape="true"
                                id="link1">
                                <xp:eventHandler
                                    event="onclick"
                                    submit="true"
                                    refreshMode="partial"
                                    refreshId="details">
                                    <xp:this.action><![CDATA[#{javascript:
var ve:NotesXspViewEntry = viewEntry;
viewScope.defUnid = ve.getUniversalID();}]]></xp:this.action>
                                </xp:eventHandler>

                                <xp:div>
                                    <xp:text
                                        escape="true"
                                        id="computedField2"
                                        value="#{viewEntry.Subject}">
                                    </xp:text>
                                </xp:div>
                            </xp:link>
                        </xp:panel>
                    </xp:this.facets>
                    <xe:this.data>
                        <xp:dominoView
                            var="view1"
                            databaseName="${configBean.HomeDbPath}"
                            viewName="Definitions"
                            expandLevel="1"
                            categoryFilter="${document1.Continent}#${sessionScope.LanguageP}#${document1.Department}">
                        </xp:dominoView>
                    </xe:this.data>
                </xe:dataView>
            </xe:widgetContainer>
        </xp:panel>

Чего мне не хватает, что не позволяет отображать текст aphaSort?

...