It is currently 1 March 2021, 0:11 Advanced search

usare idarray.length come limite per ciclo for

Domande e risposte su come utilizzare Instant Developer Foundation al meglio

usare idarray.length come limite per ciclo for

Postby zpj61 » 7 February 2017, 6:54

Ho un problema su come inde genera il codice su un costrutto assolutamente legale, volevo capire se qualcuno ha esperienze a proposito.
ho questo codice:
ko.PNG
ko.PNG (7.99 KiB) Viewed 827 times


dove Res è un idarray pubblico istanziato a new di un componente. Alla compilazione ottengo il seguente errore:

App_Code\Calendario.cs(749,61): error CS0103: Il nome 'RES' non esiste nel contesto corrente.

sulla seguente riga in rosso:
MainFrm.DTTObj.AddForI ("D9B7101E-F684-411B-9598-79DDDB816F78", "FOR (i := C0; i < Res Calendario Comp.Length (); i := i + 1)", "");
IDVariant I = new IDVariant(0,IDVariant.INTEGER);
for (I = Setcalendar_FI2_f1(I); Setcalendar_FI2_f2(I, RES); I = Setcalendar_FI2_f3(I))
{

l'errore è palese ed infatti se cambio il codice in:

ok.PNG
ok.PNG (5.49 KiB) Viewed 827 times


usando la variabile di supporto j il codice generato è corretto e non ci sono messaggi di errore:

IDVariant J = null;
MainFrm.DTTObj.AddAssign ("E3EA7D02-E17D-448A-87DB-9281D5A0A035", "j := Res Calendario Comp.Length ()", "carico colonne da array risorse del comp", J);
J = new IDVariant(MainFrm.RES.Size());
MainFrm.DTTObj.AddAssignNewValue ("E3EA7D02-E17D-448A-87DB-9281D5A0A035", "E2FD0F00-2E72-4011-81C3-95A8567B7A21", J);
int DTT_C2 = 0;
MainFrm.DTTObj.AddForI ("D9B7101E-F684-411B-9598-79DDDB816F78", "FOR (i := C0; i < j; i := i + 1)", "");
IDVariant I = new IDVariant(0,IDVariant.INTEGER);
for (I = Setcalendar_FI2_f1(I); Setcalendar_FI2_f2(I, J); I = Setcalendar_FI2_f3(I))

{

è vero che la situazione si risolve facilmente ma costringe a prove e modifiche noiose su cose piuttosto semplici.... inoltre costringe ad acrobazie di scrittura codice inutili
User avatar
zpj61
 
Posts: 723
Joined: 20 November 2015, 8:20
Location: Bassano del Grappa

Re: usare idarray.length come limite per ciclo for

Postby m.sirri » 21 February 2017, 8:20

Ho replicato il caso.

Abbiamo creato l'attività NPQ03223 per tenere conto di questa conversazione. Quando verrà valutata, potrai seguirne l'andamento con Instant Developer Roadmap.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8447
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)

Re: usare idarray.length come limite per ciclo for

Postby m.sirri » 8 April 2020, 9:05

L'attività NPQ03223 è stata completata e sarà disponibile nella versione Instant Developer 20.0. Clicca qui per leggere le note di rilascio.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8447
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)


Return to Tips & Tricks - Foundation

Who is online

Users browsing this forum: No registered users and 24 guests

cron