* another problem with diagram scripts

Homeless Posts from the old forum system
Locked
avatar
justone
Diamond
Posts: 82
Joined: 05 Mar 2006 14:42
Family Historian: None

another problem with diagram scripts

Post by justone » 06 Nov 2010 10:26

I run out of ideas ... perhaps someone could give a hint.
In the diagram options I got:

Line1
as %INDI.ASSO[1+].RELA% of
no data text enabled and text is 'relation type missing'
start on new line enabled

Line2
%INDI.ASSO[1+]>%
start on new line enabled
group with previous line enabled

Line3
[=RecordId(%INDI.ASSO[1+]>%)]
group with previous line enabled

Line4
@ %INDI.ASSO[1+].SOUR>%
start on new line enabled
group with previous line enabled

it should give for example something like this

as godfather of
James Something [recordnumber]
@ sourcedocument

and this works well as long as I defined the indi.asso.rela
if that's empty in the indi record, in other words, if only the related inidi.asso, it's recordnumber and the sour is available the complete entry is missing. I expected that the 'no data text enabled' would allow to show the complete entry with the no data text given, but it doesn't.

Help appreaciated, thanks

ID:4852

User avatar
Jane
Site Admin
Posts: 8442
Joined: 01 Nov 2002 15:00
Family Historian: V7
Location: Somerset, England
Contact:

another problem with diagram scripts

Post by Jane » 06 Nov 2010 13:01

I think the problem is you are 'looping' on the relationship element (so if it does not exist the rest are not looked at), see if you can reorder the lines a bit so you can loop on the %INDI.ASSO[1+]>% and see if the lines appear.

avatar
justone
Diamond
Posts: 82
Joined: 05 Mar 2006 14:42
Family Historian: None

another problem with diagram scripts

Post by justone » 06 Nov 2010 18:16

Hi Jane,
well besides assuming you're the one with the upcoming hint, that's what I did prior to the current setup.
Unfortunately I wanted to have the type of relation prior to the information to which person the relation get's linked, means I do need INDI.ASSO.RELA before INDI.ASSO

That's why I tried to use no data text, but that didn't help either.

And I also can't think of a way to use INDI.ASSO for looping without creating an output same time. Sort of
INDI.ASSO[loop no output]
INDI.ASSO[item].RELA
INDI.ASSO[item]
INDI.ASSO[item].SOUR

hmm ... thanks anyway, at least I now understand the issue, while it was a pretty tricky task to locate all the entries with an ASSO incl. a SOUR but without having a RELA

Tried with a query which suffered by a similar issue
I tried with Add if %INDI.ASSO>% contains ''
and wanted to let it loop using %INDI.ASSO[1+]>% and bet what this didn't work, I was only presented the first ASSO entries per record.

The scripting is that flexible one could easily produce things one didn't expect and vice versa.

User avatar
Jane
Site Admin
Posts: 8442
Joined: 01 Nov 2002 15:00
Family Historian: V7
Location: Somerset, England
Contact:

another problem with diagram scripts

Post by Jane » 06 Nov 2010 19:46

I've not tried it, but you might be able to use textif on indi.asso, with another textif nested for the rel, I think the line will loop on the first expression.

for example

=TextIf(Exists(%I%INDI.ASSO[1+]>%),textif(exists(%INDI.ASSO[1+].RELA%),%INDI.ASSO[1+].RELA%,'UNKNOWN'), '')

NB not syntax checked as I am not on the right computer.

Locked