Iniciar Sesión

Ver la Versión Completa : [PowerCOBOL v3] Um Cobol diferente


Eslopes
12 de febrero de 2016, 02:01
Olá,

eu estava vendo uma revista muito antiga que anunciava um produto para o Apple ][, um montador de listas. Uma espécie primitiva de banco de dados. Funcionava assim:

Cria-se uma nova lista
Adiciona-se colunas de tipos diversos (string, data, numero) nesta lista
Permite-se criar entrada de dados, consultas e relatórios

Pensei...dá para fazer em Cobol

fd fileList.
01 recordList.
03 listID pic 9(12).
03 listName pic x(256).

fd stringType.
01stringRecord.
03 stringID pic 9(12).
03 stringValue pic x(256).
03 stringSize pic 9(03).

fd dateType.
01 dateTimeRecord.
03 dateID pic 9(12).
03 dateValue pic 9(08).
03 timeValue.
05 hourValue pic 99.
05 minuteValue pic 99.
05 secondValue pic 99.
05 milisecondValue pic 9(04).

fd listRow.
01 recordRow.
03 rowID pic 9(12).
03 listID pic 9(12).

fd rowColumns.
01 recordRowColumns.
03 recordRowColumnKEY.
05 rowID pic 9(12).
05 columnID pic 9(12).
03 columnName pic x(64).
03 columnType pic x. *> (I)nteger, (S)tring, (D)ateTime, (C)urrency etc
03 columnOrder pic 9(03).

Com a estrutura acima poderíamos criar quantas listas quiséssemos. Cada lista poderia ter quantas colunas quiséssemos e na ordem que quiséssemos.

Poderíamos criar índices para cada coluna:

fd indexes.
01 recordIndex.
03 indexID pic 9(12).
03 indexName pic x(64).

fd indexedColumn.
01 indexedColumnRecord.
03 indexedColumnID pic 9(12).
03 rowID pic 9(12).
03 columnID pic 9(12).
03 recordRowColumnKEY.
05 rowID pic 9(12).
05 columnID pic 9(12).
03 indexValue pic x(256). *> alternaste key muito ineficiente, mas funciona.


Para a parte do formulário dinâmico, o exemplo da progress bar em PowerCOBOL 3.0 pode ser adaptado para criar um formulário inteiro. Imaginem a possibilidade de se criar toda a entrada de dados num único dia, ao invés de gastar semanas.

Consultas e relatórios também seriam fáceis de serem criados.

Acho que vou gastar algum tempo nisto. Se funcionar a contento, publico aqui no foro.

Se näo conseguir tempo para criar este exemplo, pelo menos a idéia está lançada :)

Saludos, Emerson

Kuk
20 de octubre de 2021, 12:59
@Eslopes, has podido completar esto al final?

Fito
20 de octubre de 2021, 16:35
holaaa:

Muy interesante el tema.

Saludos.

Fito...

Kuk
20 de octubre de 2021, 20:18
@Fito, nuestro amigo @Eslopes es un verdadero maestro la verdad. La de cosas que ha aportado, fíjate en la parte de Cobol OO Object-Oriented COBOL - COBOL Foro (https://www.cobolforo.es/forumdisplay.php?f=37)

Los ejemplos que he puesto son de él :bien::beber::hi:

CKTECH
24 de octubre de 2021, 21:29
Se ve interesante . Hay que probarlo.