Árvore de páginas

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.

Existen algunos cuidados necesarios para la creación y utilización de variables del tipo array, como por ejemplo:

  • En la creación siempre debe inicializarse como un Array.
    • Ejemplo:


// ArrayInitializationSample.prw
Local aRet1 := {}
Local aRet2 := Array()
De esta manera garantizamos que cuando utilicemos funciones como Len(), no se mostrará "Error".

  • Cargar en líneas en lugar de colocarlos en una sola línea de comando y colocar una posición por línea.
    • Ejemplo:


// ArrayAAddSample.prw
AAdd(aRet,{ X3Titulo(),; // 01
X3_CAMPO,; // 02
X3_PICTURE,; // 03
X3_TAMANHO,; // 04
X3_DECIMAL,; // 05
X3_VALID,; // 06
X3_USADO,; // 07
X3_TIPO,; // 08
X3_ARQUIVO,; // 09
X3_CONTEXT,; // 10
X3_PROPRI } ) // 11

  • Para ayudar en el mantenimiento y utilización de este Array, es importante documentar siempre cada posición.
    • Ejemplo:


// ArrayAssignmentSample.prw
// [01] Descuentos
// [02] Corrección monetaria
// [03] Intereses
// [04] Aumento
// [05] Decremento
// [06] Descuento
// [07] Valor original del título
// [08] Saldo del título en la moneda del título
// [09] Saldo del título en la moneda corriente
// [10] Pago parcial
// [11] Valor que se recibirá en la moneda del título
// [12] Valor que se recibirá en la moneda corriente
aRdpTlc[1][2] := aRdpTlc[1][2] + aValores[2]
aRdpTlc[2][2] := aRdpTlc[2][2] + aValores[10]
aRdpTlc[3][2] := aRdpTlc[3][2] + aValores[8]
aRdpTlc[4][2] := aRdpTlc[4][2] + aValores[5]
aRdpTlc[5][2] := aRdpTlc[5][2] + aValores[4]
aRdpTlc[6][2] := aRdpTlc[6][2] + aValores[9]
aRdpTlc[7][2] := aRdpTlc[7][2] + aValores[1]
aRdpTlc[8][2] := aRdpTlc[8][2] + aValores[6]
aRdpTlc[9][2] := aRdpTlc[9][2] + aValores[7]
aRdpTlc[10][2]:= aRdpTlc[10][2] + aValores[3]
aRdpTlc[11][2]:= aRdpTlc[11][2] + aValores[11]
aRdpTlc[12][2]:= aRdpTlc[12][2] + aValores[12]

  • Antes de referenciar los datos de un Array, es necesario verificar si realmente tiene datos cargados, para que no haya error.
    • Ejemplo:


// ArrayReferenceSample.prw
If Len(aRet) > 0
cRet := aRet[1]
EndIf

Composition Setup
import.css=/download/attachments/327912/newLayout.css

...

Função: Array

Cria um array não inicializado com a quantidade especificada de elementos.

Array ( < nElementos1>, [ nElementosN] ) --> aRet

...

    aRet(vetor)
  • Retorna um array com a dimensão especificada.
User Function Exemplo()Local aExemplo := NilLocal cMensagem := ""//+----------------------------------------------------------------------------+//|Exemplifica o uso da função Array                                           |//+----------------------------------------------------------------------------+  aExemplo := Array(7, 7)  aExemplo[1] := {"E", "A", "S", "U", "I", "M", "F"}  aExemplo[2] := {"Ç", "X", "D", "F", "B", "N", "X"}  aExemplo[3] := {"D", "P", "E", "G", "G", "H", "B"}  aExemplo[4] := {"N", "A", "K", "M", "R", "E", "H"}  aExemplo[5] := {"R", "H", "Z", "Y", "P", "T", "Y"}  aExemplo[6] := {"K", "X", "A", "K", "J", "L", "U"}  aExemplo[7] := {"M", "S", "C", "V", "P", "O", "O"}  cMensagem += cValToChar(aExemplo[1][1])  cMensagem += cValToChar(aExemplo[2][2])  cMensagem += cValToChar(aExemplo[3][3])  cMensagem += cValToChar(aExemplo[4][4])  cMensagem += cValToChar(aExemplo[5][5])  cMensagem += cValToChar(aExemplo[6][6])  cMensagem += cValToChar(aExemplo[7][7])//+----------------------------------------------------------------------------+//|Apresenta uma mensagem com os resultados obtidos                            |//+----------------------------------------------------------------------------+Return MsgInfo(cMensagem, "Exemplo do Array")
Exemplo da função Array()
Image Removed
Microsiga Protheus 8.11 , Protheus 10

...