GenoPro Home
GenoPro Home  |  Get Started With My Genealogy Tree  |  Buy  |  Login  |  Privacy  |  Search  |  Site Map
 

GenoPro Support Forum




Report Generator error with twin

Click to view RSS...
Author When changing children to twins, report generates error
Posted Friday, October 6, 2006 - Post #13633
Legendary Master

Legendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary Master

Administrators
Moderators
Customers
Gamma
FamilyTrees.GenoPro.com
Translator
GenoPro version: 3.1.0.1

Last Login: Tuesday, October 28, 2025
Posts: 4,886, Visits: 22,799
Beta 19 has the fix.
Posted Thursday, October 5, 2006 - Post #13622
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

Customers
GenoPro version: 2.0.1.4

Last Login: Thursday, June 30, 2016
Posts: 141, Visits: 294
Hi GenoProSupport

I agree, usually, problems can be solved easily if the problem can be defined well.

I actually saw that the "i" was missing from the Dim statement. However, not understanding VBS I assumed that such a local variable does not have to be declared. For example, I am used to some programming in TCL/TK and there, if the variable is not declared explicitly, it is declared as a local variable the first time a value is assigned. I thought that VBS might be similar since I also thought that the program must have worked at one stage. It looks like I do a lot of assuming.

Thank you again

Frank1

Posted Thursday, October 5, 2006 - Post #13621
Legendary Master

Legendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary Master

Administrators
Moderators
Customers
Gamma
FamilyTrees.GenoPro.com
Translator
GenoPro version: 3.1.0.1

Last Login: Tuesday, October 28, 2025
Posts: 4,886, Visits: 22,799
Frank1 (10/5/2006)
That now works. Thank you so much for that.

If I can reproduce the bug, I can fix it.  What triggered my attention was the change in parameter fHideFamilyDetails="N".

I generated a report using your .gno file and got the error.  The rest was a piece of cake Tongue.

Looking forward to Version 2.

Me too!  It has been 8 years and 3 months since the release of version 1.00.  GenoPro 2.0 is well overdue Blush.

Posted Thursday, October 5, 2006 - Post #13620
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

Customers
GenoPro version: 2.0.1.4

Last Login: Thursday, June 30, 2016
Posts: 141, Visits: 294
Hello GenoProSupport

That now works.

Thank you so much for that.

Looking forward to Version 2. - looking great so far.

Thank you

Frank1

Posted Thursday, October 5, 2006 - Post #13619
Legendary Master

Legendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary MasterLegendary Master

Administrators
Moderators
Customers
Gamma
FamilyTrees.GenoPro.com
Translator
GenoPro version: 3.1.0.1

Last Login: Tuesday, October 28, 2025
Posts: 4,886, Visits: 22,799
Thanks for reporting the bug.  The problem is the variable i is not declared as local, which is the value of an individual.  The solution is to add i to the local variables

Dim oRepertoryTwins, strTwinId, oTwin, oTwins, i

Here is the full subroutine:

Sub WriteNarrativeTwins(obj)
 Dim oRepertoryTwins, strTwinId, oTwin, oTwins, i
 Set oRepertoryTwins = Session("oRepertoryTwins")

 Select Case obj.class
 Case "Family"
  If oRepertoryTwins.KeyCounter("F" & obj.id) > 0 Then
   For i = 0 to oRepertoryTwins.Entry("F" & obj.id).count-1
    strTwinId = oRepertoryTwins.Entry("F" & obj.id).Object(i)
    WriteNarrativeTwin oRepertoryTwins.Entry(strTwinId).Object(0)
   Next
  End If
 Case "Individual"    
  If oRepertoryTwins.KeyCounter("I" & obj.id) > 0 Then
   strTwinId = oRepertoryTwins.Entry("I" & obj.id).Object(0)
   WriteNarrativeTwin oRepertoryTwins.Entry(strTwinId).Object(0)
  End If
 End Select
End Sub


Posted Thursday, October 5, 2006 - Post #13618
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

Customers
GenoPro version: 2.0.1.4

Last Login: Thursday, June 30, 2016
Posts: 141, Visits: 294
Hello maru-san

I just did what you suggested (I think again).

On a clean skin, with one pair of twins, the report does NOT generate an error.

Change the Parameter:

     fHideFamilyDetails="Y" to:

     fHideFamilyDetails="N"

I get the same error as before - illegal assignment "i" on line 368 in lang.vbs.

Thanks

Frank1

Posted Thursday, October 5, 2006 - Post #13617
Forum Master

Forum MasterForum MasterForum MasterForum MasterForum MasterForum MasterForum MasterForum MasterForum Master

Customers
Important Contributors
FamilyTrees.GenoPro.com
Translator
GenoPro version: 3.1.0.1

Last Login: Sunday, March 21, 2021
Posts: 716, Visits: 12,927
Frank1 (10/5/2006)
Hello

Please remember that this problem only occurs when the Parameter - fHideFamilyDetails="N" in config.xml is set (default being "Y").

Thanks

Frank1


Since you have run the report with the original skin and did not have any error, why don`t you run a report with a copy of the original skin and just change from N to Y as decribed above. I have plenty of twins in my tree and never had a problem.
I think you should take a more systematic approach to changing things and don`t assume. One change at a time from the original skin and look at the results. You will find the problem much faster.
Posted Thursday, October 5, 2006 - Post #13616
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

Customers
GenoPro version: 2.0.1.4

Last Login: Thursday, June 30, 2016
Posts: 141, Visits: 294
Hello

I did another test:

I commented out the "For ..... Next" lines so that the line that has the error is no longer in play (the "For...." - line 368):

'   For i = 0 to oRepertoryTwins.Entry("F" & obj.id).count - 1
    strTwinId = oRepertoryTwins.Entry("F" & obj.id).Object(0)
    WriteNarrativeTwin oRepertoryTwins.Entry(strTwinId).Object(0)
'   Next

Also I changed the "...Object(i)" to "...Object(0)" not to reference the "i" which no longer has an assignment.

The report generator now runs through without error. The report appears to be o/k. As I said before I don't understand the program flow here, so I don't know what other damage this might have done. I have to assume that there was a reason for having a 'For....Next" loop in the first place.

I hope that this helps figure out the cause of this problem. Please remember that this problem only occurs when the Parameter - fHideFamilyDetails="N" in config.xml is set (default being "Y").

Thanks

Frank1

Posted Thursday, October 5, 2006 - Post #13615
Forum Guru

Forum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum GuruForum Guru

Customers
GenoPro version: 2.0.1.4

Last Login: Thursday, June 30, 2016
Posts: 141, Visits: 294
Hello

I tried a few things:

On line 368 as report error suggests -

For i = 0 to oRepertoryTwins.Entry("F" & obj.id).count-1

I changed "i = 0" to "i = 1". The same error.

On line 369 I tried -

strTwinId = oRepertoryTwins.Entry("F" & obj.id).Object(i)

I changed "....Object(i)" to "....Object(1)". The same error.

There are no other "i" close this line 368. The report error states that there is an "illigal assignment 'i'". I think that that is exactly correct. On line 368, "i" is assigned up to "oRepertoryTwins.Entry("F" & obj.id).count-1". This is the cause of the error. This term fails for some reason.

Since I don't know how this program works, I don't know where to go from here.

Thanks for the help up to now. Hope that someone can help with this.

Frank1

Posted Thursday, October 5, 2006 - Post #13612
Famous Writer

Famous WriterFamous WriterFamous WriterFamous WriterFamous WriterFamous WriterFamous WriterFamous WriterFamous Writer

Customers
Important Contributors
Translator
GenoPro version: 3.1.0.1

Last Login: Friday, November 25, 2022
Posts: 334, Visits: 7,574
Then try either:

try to change i = 0 to i = 1 and see if there is any change.

OR

try changing the second part to hard coded number. Like: For i=0 to 1 and see what happens.



Similar Topics

Click to view RSS...
Expand / Collapse

Reading This Topic

Expand / Collapse