It is currently 2 March 2021, 17:11 Advanced search

problema in traduzione C#

Questo forum è nato con lo scopo di raccogliere le proposte di modifica di Instant Developer e discuterne insieme.

problema in traduzione C#

Postby rcolombo64 » 3 July 2014, 12:58

A seguito del codice
inde.png
inde.png (38.35 KiB) Viewed 1986 times


La traduzione genera questo codice

Code: Select all
// **********************************************************************
  // Carica Modelli
  // for each row inf
  // **********************************************************************
  public int CaricaModelli ()
  {
    StringBuilder SQL = new StringBuilder();
    int TransCount   = 0;
    int ReturnStatus = 0;
    IDCachedRowSet QV;

    try
    {
      TransCount = 0;
      //
      // Carica Modelli Body
      // Corpo Procedura
      //
      AIRBIZ.AIRBIZINDE.InfspTemplatepagina v_ITPPAG = null;
      v_ITPPAG = (AIRBIZ.AIRBIZINDE.InfspTemplatepagina)new AIRBIZ.AIRBIZINDE.InfspTemplatepagina(MainFrm.AIRBIZINDEObject.MainFrm,MainFrm.AIRBIZINDEObject.IMDB);
      com.progamma.doc.IDCollection v_COLL = null;
      v_COLL = (com.progamma.doc.IDCollection)new com.progamma.doc.IDCollection();
      AIRBIZ.AIRBIZINDE.InfspMultimedia v_IPML = null;
      v_ITPPAG.LoadCollectionBE(v_COLL);
      IDVariant v_IDTEMPLATE = new IDVariant(0,IDVariant.INTEGER);
      PAN_PANNPOPUPAGI.ClearValueList(PFL_PANNPOPUPAGI_IDTEMPL);
      //
      // pr
      //
      IDVariant v_IPROP = null;
      v_IPROP = (new IDVariant(v_ITPPAG.GetPropertyIndex((new IDVariant("Descr")).stringValue(), (new IDVariant(-1)).booleanValue())));
      v_COLL.ClearSort();
      v_COLL.SortBy(v_IPROP.intValue());
      v_COLL.EnableSort();
      PAN_PANNPOPUPAGI.PanelCommand(Glb.PCM_SEARCH);
      IEnumerator L2 = v_COLL.GetLoopCollection().GetEnumerator();
      while (L2.MoveNext())
      {
        AIRBIZ.AIRBIZINDE.InfspTemplatepagina C2_COLL = (AIRBIZ.AIRBIZINDE.InfspTemplatepagina) L2.Current;
        PAN_PANNPOPUPAGI.SetValueListItem(PFL_PANNPOPUPAGI_IDTEMPL, C2_COLL.getIDTEMPL(), C2_COLL.getDESCR().stringValue(), (new IDVariant("")).stringValue(), (new IDVariant("")).stringValue(), (new IDVariant(-1)).intValue());
        if ((v_IDTEMPLATE.equals((new IDVariant(0)), true)) && (IMDB.Value(AIRBIZ.AIRBIZINDE.IMDBDef1.TBL_BIZDATISESSI, AIRBIZ.AIRBIZINDE.IMDBDef1.FLD_BIZDATISESSI_IDPANOMEOGG1, 0).equals((new IDVariant(0)), true)))
        {
          AIRBIZ.AIRBIZINDE.InfspPagine v_IP = null;
          v_IP = (AIRBIZ.AIRBIZINDE.InfspPagine)new AIRBIZ.AIRBIZINDE.InfspPagine(MainFrm.AIRBIZINDEObject.MainFrm,MainFrm.AIRBIZINDEObject.IMDB);
          v_IP.Init();
          v_IP.setIDTMPL(C2_COLL.getIDTEMPL());
          // PAN_PANNPOPUPAGI.set_FieldText(PFL_PANNPOPUPAGI_IDTEMPL, v_IDTEMPLATE.stringValue());
          PAN_PANNPOPUPAGI.set_QBEFilter(PFL_PANNPOPUPAGI_IDTEMPL, v_IDTEMPLATE.stringValue());
          v_IDTEMPLATE = C2_COLL.getIDTEMPL();
          IMDB.set_Value(IMDBDef1.PQRY_NUOVAPAGINA, IMDBDef1.PQSL_NUOVAPAGINA_IDTMPL, 0, new IDVariant(v_IDTEMPLATE));
          AIRBIZ.AIRBIZINDE.InfspTemplates v_IT = null;
          v_IT = AIRBIZ.AIRBIZINDE.InfspTemplates.GetFirstPageStyle(v_IDTEMPLATE, MainFrm.AIRBIZINDEObject.MainFrm, MainFrm.AIRBIZINDEObject.IMDB);
          if (C2_COLL != null)
          {
            v_IP.setIDSTILE(C2_COLL.getIDTEMPL());
          }
          PAN_PANNPOPUPAGI.set_pDocument(v_IP);
        }
      }
      return 0;
    }
    catch (Exception _e)
    {
      MainFrm.ErrObj.ProcError ("PopupPagina", "CaricaModelli", _e);
      return -1;
    }
  }


In pratica ignora la dichiarazione della variabile it (il cui nome è stato generato in automatico da In.De.) e la associa alla pseudovariabile it definita all'interno del ciclo foreach
rcolombo64
 
Posts: 6
Joined: 14 May 2014, 12:50

Re: problema in traduzione C#

Postby m.sirri » 3 July 2014, 13:58

Non capisco dov'è il problema.
La variabile it del foreach nel codice C# si chiama L2, mentre l'altra variabile it nel codice si chiama v_IT.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8448
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)

Re: problema in traduzione C#

Postby rcolombo64 » 3 July 2014, 14:06

Nota la penultima istruzione del programma inde

InfspTemplates it = InfspTemplates.GetFirstPageStyle(idtemplate)

if (it!= null)
{
ip.IdStile = it.Idtempl
}

ebbene, nel c# generato, non viene utilizzato il valore della proprietà di it, ma della proprietà di C2_COLL

v_IT = AIRBIZ.AIRBIZINDE.InfspTemplates.GetFirstPageStyle(v_IDTEMPLATE, MainFrm.AIRBIZINDEObject.MainFrm, MainFrm.AIRBIZINDEObject.IMDB);
if (C2_COLL != null)
{
v_IP.setIDSTILE(C2_COLL.getIDTEMPL());
}
rcolombo64
 
Posts: 6
Joined: 14 May 2014, 12:50

Re: problema in traduzione C#

Postby m.sirri » 3 July 2014, 16:15

Dallo screenshot del VCE che hai allegato si vede che la variabile locale è sottolineata in verde che vuol dire che non è usata: infatti il codice c# è coerente.

Forse si potrebbe disambiguare il nome delle variabili in questo caso.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8448
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)

Re: problema in traduzione C#

Postby m.sirri » 21 July 2014, 13:47

Abbiamo creato l'attività NPQ01925 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: 8448
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)

Re: problema in traduzione C#

Postby m.sirri » 20 March 2020, 14:29

L'attività NPQ01925 è stata completata e sarà disponibile nella versione Instant Developer 20.0.
User avatar
m.sirri
Pro Gamma
Pro Gamma
 
Posts: 8448
Joined: 30 September 2010, 17:01
Location: Ozzano dell'Emilia (BO)


Return to Proposte di modifica

Who is online

Users browsing this forum: No registered users and 12 guests