Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Soll / Haben in + und - per Script wandeln

Soll / Haben in + und - per Script wandeln:

Hallo zusammen,

wie kann ich beim Laden von Daten das Soll und Haben in + bzw. - per Script wandeln. Ich bekomme die Daten aus dem Vorsystem nur mit der Kennzeichnung Soll oder Haben (siehe Beispiel Spalte P Monatssaldo). Hat jemand eine Idee?

Vielen Dank im Voraus

1 Solution

Accepted Solutions
Anonymous
Not applicable
Author

versuch's mal so in der Art, hier mal ein Beispiel  für das Feld Gesamtsaldo:

LOAD
Gesamtsaldo,
right(Gesamtsaldo,1) as SOLLHABEN,
index(Gesamtsaldo,' ') as INDEX,
num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1))) as SALDO,
if(right(Gesamtsaldo,1)='S',num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1))),-1
*
num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1)))) as SALDO_PLUS_MINUS

FROM
[SuSa - Beispiel_com.xlsx]
(
ooxml, embedded labels, header is 3 lines, table is [Jan 17]);

View solution in original post

6 Replies
Anonymous
Not applicable
Author

LOAD

...

if(SOLLHABENFELD='S',MONATSSALDO,-1*MONATSSALDO) as MONATSSALDO,

...

Not applicable
Author

Hallo Robin,

sorry, bin beim Scripten noch neu. Kannst Du das ganze Script kurz posten.

Muss ich erst das Feld "SOLLHABENFELD" erstellen?

Vielen Dank für Deine Unterstützung im Voraus.

BG

Philipp

[Jan 17]:

LOAD

[Konto],

//  [SOLLHABENFELD],

[Monats-Saldo],

    if(SOLLHABENFELD='S',MONATSSALDO,-1*MONATSSALDO) as MONATSSALDO

FROM [lib://99_Data/SuSa.xlsx]

(ooxml, embedded labels, header is 3 lines, table is [Jan 17]);

Anonymous
Not applicable
Author

versuch's mal so in der Art, hier mal ein Beispiel  für das Feld Gesamtsaldo:

LOAD
Gesamtsaldo,
right(Gesamtsaldo,1) as SOLLHABEN,
index(Gesamtsaldo,' ') as INDEX,
num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1))) as SALDO,
if(right(Gesamtsaldo,1)='S',num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1))),-1
*
num(num#(left(Gesamtsaldo,index(Gesamtsaldo,' ')-1)))) as SALDO_PLUS_MINUS

FROM
[SuSa - Beispiel_com.xlsx]
(
ooxml, embedded labels, header is 3 lines, table is [Jan 17]);

PrashantSangle

Hi,

try like below

If (right(MONATSSALDO,1)='S', subfield(MONATSSALDO,' '), -1 * subfield(MONATSSALDO,' ')) as MONATSSALDO


Regards,

Great dreamer's dreams never fulfilled, they are always transcended.
Please appreciate our Qlik community members by giving Kudos for sharing their time for your query. If your query is answered, please mark the topic as resolved 🙂
Anonymous
Not applicable
Author

perhaps the subfield() variant is easier to understand, but I think then you need the subfield() function with 3 parameters instead of the one with 2 parameters as Prashant suggested?!?

LOAD
Gesamtsaldo,
right(Gesamtsaldo,1) as SOLLHABEN,
num(SubField(Gesamtsaldo,' ',1)) as SALDO,
if(right(Gesamtsaldo,1)='S',num(SubField(Gesamtsaldo,' ',1)),

-1*num(SubField(Gesamtsaldo,' ',1))) as SALDO_PLUS_MINUS

FROM
[SuSa - Beispiel_com.xlsx]
(
ooxml, embedded labels, header is 3 lines, table is [Jan 17]);

Not applicable
Author

Hi Robin,

super, hat schnell geklappt!

Vielen Dank.

BG

Philipp