Arrays podem guardar tanto estruturas simples quando estruturas complexas e em ambos os casos se não houver uma formatação clara e legível, a sua programação e manutenção podem se tornar difíceis e geradoras de problemas. No momento de atribuição de valores em arrays, recomendamos o uso da formatação horizontal para ficar claro para o leitor como é a estrutura de dimensões da array:

 

// FormattingOfArrayType.prw

#INCLUDE "TOTVS.CH"

 

Function FormattingOfArrayType()

Local aMultiDimensionalArray  := {  {"A"  ,1     },;

                                       {"B"  ,2     },;

                                        {"C"  ,3     }}

Local aCommentedArray          := {  "A",; // A

                                       "B",; // B

                                       "C"}  // C

Return

 

Quando a array é utilizada para representar um mapeamento de chave e valor, e seu tamanho for definido, sugerimos a utilização de defines para nomear as posições da array:

 

// FormattingOfArrayMapType.prw

#INCLUDE "TOTVS.CH"

#DEFINE INFORMATION1 1

#DEFINE INFORMATION2 2

#DEFINE INFORMATION3 3

 

Function FormattingOfArrayMapType()

Local aMultiDimensionalMapArray     := { "A", "B", "C" }

Local aCommentedMapArray              := {  "A",; // Informação 1

                                                "B",; // Informação 2

                                                "C"}  // Informação 3

 

ConOut("Informação 1: " + CValToChar(aMultiDimensionalMapArray[INFORMATION1]))

ConOut("Informação 2: " + CValToChar(aMultiDimensionalMapArray[INFORMATION2]))

ConOut("Informação 3: " + CValToChar(aMultiDimensionalMapArray[INFORMATION3]))                                         

Return

  • Sem rótulos