phillip_austerf
New Creator

FS-List kopieren

Jump to solution

Hallo zusammen,

ich habe ein Problem beim Kopieren von FS-List Einträgen.

Die Liste ist sprachabhängig (DE / EN).

Nun möchte ich für redaktionelle Vereinfachungen gerne die Inhalte von DE nach EN kopieren.

Wer kann mir sagen wo der Fehler liegt? Im folgenden habe ich mal den Code zusammenkopiert, wie er ausgeführt werden sollte.

Vielen Dank schonmal im Voraus,

Phillip Austerfield

Alles kommt von Page storeElement;

// lock(true, true) gesetzt

Section sectionToCopyDataFrom // hat aktuelle Section

Language _sourceLanguage //de

Language _targetLanguage //en

//

// Data Objekt der Sektion holen

//

Data sectionData = sectionToCopyDataFrom.getData();

for(String variable : sectionData.getVariableNames())

{

    EditorValue<?> editor = sectionData.get(variable).getEditor();

    FsListEditorValue pFSEditorValue = ((FsListEditorValue) editor);

    //

    // get form data list

    //

    FormDataList inlineSectionsSrc = pFSEditorValue.get(_sourceLanguage);

    FormDataList inlineSectionsDest = pFSEditorValue.get(_targetLanguage);

    //

    // alle listeneinträge durchgehen

    //

    for (IdProvidingFormData inlineSection : inlineSectionsSrc)

    {

        //

        // alle variablen des aktuellen eintrags holen

        //

        List<String> vFields = inlineSection.getForm().appendEditorNames(null);

        for (String sName : vFields)

        {

            FormField<?> pSrc = inlineSection.get(_sourceLanguage, sName);

            FormField<?> pDest = inlineSection.get(_targetLanguage, sName);

            pDest.set(pDest.get());

        }

        //

        // in Zielliste einfügen

        //

        inlineSectionsDest.add(inlineSection);

    }

    pFSEditorValue.set(_targetLanguage, inlineSections);

}

sectionToCopyDataFrom.setData(sectionData);

sectionToCopyDataFrom.save();

storeElement.save();

// lock(false, true) entfernt

1 Solution

Accepted Solutions
jan-tilo
I'm new here

Hallo Phillip,

könnte es vielleicht an folgender Zeile liegen:

pDest.set(pDest.get());

sollte wohl eher pDest.set(pSrc.get()); Smiley Wink

Viele Grüße

Jan Tilo

View solution in original post

0 Kudos
2 Replies
jan-tilo
I'm new here

Hallo Phillip,

könnte es vielleicht an folgender Zeile liegen:

pDest.set(pDest.get());

sollte wohl eher pDest.set(pSrc.get()); Smiley Wink

Viele Grüße

Jan Tilo

0 Kudos

Hallo Jan,

tja, exakt daran lag es 😉

Viele Grüße,

Phillip.

0 Kudos