primer commit subida

This commit is contained in:
Luis
2026-09-22 20:38:51 -04:00
commit 07649704b1
10247 changed files with 3271751 additions and 0 deletions
@@ -0,0 +1,44 @@
LAYOUT
GRID
{
[img ]
<Tree tree >
Name
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
[name ][vend ][vb ][de ][st ][it ][nt ]
}
END
END
ATTRIBUTES
IMAGE img:image="genero_logo.png", style="title";
name = FORMONLY.name;
vend = FORMONLY.nombre_vend;
vb = FORMONLY.valor_bruto;
de = FORMONLY.descuento;
st = FORMONLY.subtotal;
it = FORMONLY.itbis;
nt = FORMONLY.neto;
PHANTOM FORMONLY.parentId;
PHANTOM FORMONLY.id;
PHANTOM FORMONLY.hasChildren;
TREE tree:
IMAGEEXPANDED = "open",
IMAGECOLLAPSED = "folder",
IMAGELEAF = "file",
ISNODECOLUMN = hasChildren;
INSTRUCTIONS
SCREEN RECORD tree(name, nombre_vend,valor_bruto, descuento, subtotal, itbis, neto,parentId, id, hasChildren)
+90
View File
@@ -0,0 +1,90 @@
SCHEMA decomarmol
DEFINE id int
DEFINE datos DYNAMIC ARRAY OF RECORD
ano SMALLINT,
nombre_Vend CHAR (10),
parentId STRING,
id STRING,
hasChildren BOOLEAN
END RECORD
MAIN
OPEN FORM f FROM "test"
DISPLAY form f
CALL nodo1(id)
DISPLAY ARRAY datos TO sdatos.* ATTRIBUTE(UNBUFFERED)
ON EXPAND(ID)
CALL nodo1(id)
END DISPLAY
END MAIN
FUNCTION nodo1(p)
DEFINE p INT
DEFINE NAME, parentId STRING
DEFINE i INT
CONNECT TO "decomarmol" USER "jsoto" USING "12345"
IF p == 0 THEN
LET parentId = 0
DECLARE busca1 CURSOR FOR
SELECT UNIQUE a.ano FROM prdtable a
WHERE a.ano in (2008,2009)
LET p = 1
FOREACH busca1 INTO datos[p].ano
LET p = p + 1
CALL datos.insertElement(p)
LET id = parentId || "." || i
LET datos[p].id = id
LET datos[p].parentId = parentId
LET i = 2
DECLARE busca_m CURSOR FOR
SELECT UNIQUE a.mes FROM prdtable a
WHERE a.ano = datos[p].ano
FOREACH busca_m INTO datos[i].nombre_vend
IF i MOD 2 THEN
LET datos[p].hasChildren = TRUE
ELSE
LET datos[p].hasChildren = FALSE
END IF
LET i = i + 1
END FOREACH
END FOREACH
ELSE
LET parentId = datos[p].id
LET NAME = "mESES"
END IF
END FUNCTION
FUNCTION contraer()
DEFINE p INT
LET p = 1
WHILE p < datos.getLength()
CALL collapse(p)
LET p = p + 1
END WHILE
END FUNCTION
FUNCTION collapse(p)
DEFINE p INT
DEFINE id STRING
LET id = datos[p].id
WHILE p < datos.getLength()
IF datos[p + 1].parentId <> id THEN EXIT WHILE END IF
CALL collapse(p + 1)
CALL datos.deleteElement(p + 1)
END WHILE
END FUNCTION
Binary file not shown.
@@ -0,0 +1,70 @@
DEFINE tree DYNAMIC ARRAY OF RECORD
NAME STRING,
parentId STRING,
id STRING,
hasChildren BOOLEAN
END RECORD
MAIN
DEFINE id INTEGER
OPEN FORM f FROM arg_val(0)
DISPLAY FORM f
CALL expand(0)
DISPLAY ARRAY tree TO tree.* ATTRIBUTE(UNBUFFERED)
ON EXPAND(id)
DISPLAY "expand id:", id, " arr_curr:", arr_curr()
CALL expand(id)
ON COLLAPSE(id)
DISPLAY "collapse id:", id, " arr_curr:", arr_curr()
CALL collapse(id)
END DISPLAY
END MAIN
FUNCTION collapseAll()
DEFINE p INT
LET p = 1
WHILE p < tree.getLength()
CALL collapse(p)
LET p = p + 1
END WHILE
END FUNCTION
FUNCTION collapse(p)
DEFINE p INT
DEFINE id STRING
LET id = tree[p].id
WHILE p < tree.getLength()
IF tree[p + 1].parentId <> id THEN EXIT WHILE END IF
CALL collapse(p + 1)
CALL tree.deleteElement(p + 1)
END WHILE
END FUNCTION
FUNCTION expand(p)
DEFINE NAME, id, parentId STRING
DEFINE p INT
DEFINE i INT
IF p == 0 THEN
LET parentId = 0
LET NAME = "Root"
ELSE
LET parentId = tree[p].id
LET NAME = "Node"
END IF
FOR i = 1 TO 4
LET p = p + 1
CALL tree.insertElement(p)
LET id = parentId || "." || i
LET tree[p].id = id
LET tree[p].parentId = parentId
LET tree[p].name = NAME || " " || i
IF i MOD 2 THEN
LET tree[p].hasChildren = TRUE
ELSE
LET tree[p].hasChildren = FALSE
END IF
END FOR
END FUNCTION
@@ -0,0 +1,40 @@
LAYOUT
GRID
{
[img ]
<Tree tree >
Name
[name ]
[name ]
[name ]
[name ]
[name ]
}
END
END
ATTRIBUTES
IMAGE img:image="genero_logo.png", style="title";
name = FORMONLY.name;
#vend = FORMONLY.nombre_vend;
#vb = FORMONLY.valor_bruto;
#de = FORMONLY.descuento;
#st = FORMONLY.subtotal;
#it = FORMONLY.itbis;
#nt = FORMONLY.neto;
PHANTOM FORMONLY.parentId;
PHANTOM FORMONLY.id;
PHANTOM FORMONLY.hasChildren;
TREE tree:
IMAGEEXPANDED = "open",
IMAGECOLLAPSED = "folder",
IMAGELEAF = "file",
ISNODECOLUMN = hasChildren;
INSTRUCTIONS
#SCREEN RECORD tree(name, nombre_vend,valor_bruto, descuento, subtotal, itbis, neto,parentId, id, hasChildren)
SCREEN RECORD tree(name, parentId, id, hasChildren)
+28
View File
@@ -0,0 +1,28 @@
LAYOUT
GRID
{
<Tree tree >
[f1 ][n ]
[f1 ][n ]
[f1 ][n ]
[f1 ][n ]
[f1 ][n ]
}
END
ATTRIBUTES
f1 = formonly.ano;
n = formonly.nombre_vend;
PHANTOM FORMONLY.parentId;
PHANTOM FORMONLY.id;
PHANTOM FORMONLY.hasChildren;
TREE tree:
IMAGEEXPANDED = "open",
IMAGECOLLAPSED = "folder",
IMAGELEAF = "file",
ISNODECOLUMN = hasChildren;
INSTRUCTIONS
SCREEN RECORD sdatos (ano,nombre_vend, parentid,id,haschildren)