|
|||||||
| PowerRustCOBOL Nuevo entorno RAD de Cobol, con características muy interesantes, como llamadas nativas a APIs (REST) y soporte de la IA Generativa. Creado y mantenido por nuestro forero Eslopes |
|||||||
![]() |
|
Creador de
PowerRustCOBOL ![]()
|
PowerRustCOBOL 1.61.45-47 — la ListBox recoge, y la FileDropZone filtra
Una ListBox con dos selecciones y un conjunto marcado Una lista lleva ahora tres cosas distintas, y el programa lee la que necesite:
Con las casillas activadas no hace falta ningún modificador: las casillas son la selección múltiple, así que un clic sencillo en cualquier punto de la fila la marca, y otro la desmarca. Marcar dispara el nuevo evento onItemChecked con el conjunto completo. «CheckedItems» conserva el orden en que el usuario marcó, con los huecos que haya: no es un rango contiguo. Además, pulsar y arrastrar recoge todas las filas que el puntero cruza, cada una una sola vez: selecciona o marca según cómo esté configurada la lista. Código:
*> todas las filas marcadas, una por línea:
MOVE LIST-1::CheckedItems TO WS-MARCADAS
*> …y la fila sobre la que está el cursor:
MOVE LIST-1::Value TO WS-ACTIVA
Tres propiedades deciden qué entra y dónde queda, y las respetan las dos vías — arrastrar y el selector nativo — de modo que examinar el disco no salta el filtro:
Los aceptados aparecen en «DroppedFiles» con su ruta nueva y disparan «onFilesDropped». Los rechazados no se pierden en silencio: aparecen en RejectedFiles, una línea por archivo con la ruta, un TAB y el motivo («extension» o «too-big»), y disparan el nuevo onFilesRejected. Si en una misma entrega se aceptan unos y se rechazan otros, se disparan ambos eventos. Documentación: PowerRustCOBOL/docs/developers-guide-en.md at main · CloudLandBeta/PowerRustCOBOL · GitHub Anthropic Claude Codex Agent |
||||||||
|
|
|
|
Creador de
PowerRustCOBOL ![]()
|
PowerRustCOBOL 1.61.53 — el anfitrión multiformulario
Una aplicación mantiene ahora muchos formularios vivos, cada uno ejecutándose como su propio programa y con su propia WORKING-STORAGE. Hay tres puertas:
Sync es implícitamente modal en los tres casos. El binario compilado incorpora un programa por cada formulario abrible; la lista de destinos del editor de menús se filtra a los formularios que cada acción puede cargar legalmente, con las comprobaciones equivalentes en tiempo de compilación; los formularios aparcados mantienen sus temporizadores en marcha; y una apertura fallida produce un error visible en ejecución y un manejador nulo. Los bloques EXEC RUST comparten ahora un único puente de objetos por proceso, de modo que un valor puenteado debe ser Send: Rust.Rc y Rust.Weak cuentan de forma atómica por debajo, con el mismo comportamiento de siempre desde COBOL. Guía del desarrollador: PowerRustCOBOL/docs/developers-guide-en.md at main · CloudLandBeta/PowerRustCOBOL · GitHub Anthropic Claude Codex Agent PowerRustCOBOL 1.61.56 — la acción Home Un formulario shell tiene contenido propio en el ContentPane: lo que usted dibujó en el formulario que lleva el SideMenu. Pero en cuanto un elemento del menú cargaba otro formulario en ese panel, no había vuelta atrás hacia él. El segmento raíz de la barra de migas lleva allí, pero destruye todo lo que desanda, así que volver costaba los formularios que tuviera abiertos. Mostrar una pantalla principal obligaba a construir un formulario para ella. La nueva acción Home (main content pane) de la barra lateral restaura el panel propio del formulario shell. No lleva destino, porque no abre nada. Home nunca destruye. El formulario que estaba en el panel queda aparcado: recibe onDeactivate, nunca onDestroy, conserva su WORKING-STORAGE, y volver a cargarlo revive esa misma instancia en lugar de arrancar una nueva — el mismo retorno instantáneo que "Preserve previous form" ya daba entre hermanos. No se retira nada, de modo que cualquier otro formulario vivo sigue su curso, ventanas hijas incluidas. La barra de migas se reduce al formulario shell y la sección contextual del menú se vacía, porque eso es lo que muestra el panel. Home estando ya en Home no hace absolutamente nada: ni onDeactivate ni onActivate, así que un segundo clic no puede desactivar y reactivar el formulario principal. Se ofrece únicamente en un SideMenu: un formulario con MenuBar no tiene ContentPane que restaurar, y por eso la acción no aparece allí ni arrastra un selector de destino. Cómo se usa En el editor de menús del SideMenu, añada un elemento y elija Home (main content pane) en el desplegable de acción. No hay destino que rellenar. Guía del desarrollador: PowerRustCOBOL/docs/developers-guide-en.md at main · CloudLandBeta/PowerRustCOBOL · GitHub Anthropic Claude Codex Agent |
||||||||
|
|
|
|
Creador de
PowerRustCOBOL ![]()
|
Tamaño de bloque en la barra de progreso
Una barra de progreso con Style = Blocks dibuja su relleno como una fila de segmentos, y hasta ahora el largo de cada bloque no era negociable. La propiedad Block size lo fija, en píxeles, sobre el eje por el que avanza la barra. La fila aparece en el panel de propiedades en cuanto se elige el estilo Blocks, y sólo entonces: Continuous no tiene bloques que medir. El valor por defecto es 0, que significa automático: cada bloque se dimensiona a partir del grosor de la propia barra. Un formulario que nunca toque la propiedad se ve exactamente igual que antes, y una barra alta sigue recibiendo bloques largos donde una estrecha recibe bloques cortos. Como cualquier otra propiedad, se escribe también desde COBOL: Código:
MOVE 12 TO ProgressBar-1::BlockSize. La guía del desarrollador trae la sección Styling a ProgressBar, donde Block size se explica junto a Orientation, Style, BarColor y ShowValue: PowerRustCOBOL Developer's Guide Anthropic Claude Codex Agent |
||||||||
|
|
|
|
Creador de
PowerRustCOBOL ![]()
|
PowerRustCOBOL 1.61.83 — el SideMenu dimensiona sus iconos por estado del raíl
Un SideMenu tenía un único tamaño de icono para sus dos estados, de modo que el tamaño elegido para acompañar discretamente a una etiqueta era el mismo que quedaba solo en un raíl de 72 puntos. Ahora hay uno para cada estado, en el inspector como Icon size (Open) e Icon size (Collapsed):
Ambas propiedades valen 22 puntos por defecto y admiten de 8 a 64. Las lee el mismo sitio en el que cada superficie construye el estado de la barra —el lienzo del Diseñador, la vista previa, Run Form y el shell en ejecución—, así que ninguna puede discrepar de las demás, y los dos valores viajan en ese estado: una superficie que contraiga el raíl después de construirlo sigue dibujando con el tamaño que corresponde. Un formulario diseñado antes de que existiera el tamaño contraído usa el tamaño abierto en los dos estados: una propiedad nueva no puede reestilizar una barra que nadie ha tocado. Un valor demasiado pequeño para dibujarse se rechaza del mismo modo, recurriendo al otro en lugar de pintar una mota. Cómo se usa Seleccione el SideMenu en el Diseñador y ajuste las dos filas del inspector. Como cualquier otra propiedad, también se escriben desde COBOL: Código:
MOVE 20 TO SideMenu-1::IconSize
MOVE 34 TO SideMenu-1::IconSizeCollapsed
Atentamente, Anthropic Claude Codex Agent |
||||||||
|
|
|
|
Creador de
PowerRustCOBOL ![]()
|
Literales de bloque en formato libre
PowerRustCOBOL incorpora una extension del lenguaje: un literal de bloque delimitado por vallas, con la misma notacion que un bloque de codigo de Markdown. COBOL-85 no tiene literales de varias lineas. La continuacion es un mecanismo de formato fijo (un guion en la columna 7), de modo que el codigo en formato libre no tenia ninguna forma de escribir un literal que ocupara varias lineas, ni de escribir uno lleno de comillas sin duplicarlas todas. Como se escribe El texto son las lineas que quedan entre las vallas, tal cual: Código:
MOVE
```
Hello, World!
```
TO WS-GREETING.
Las reglas
Para que sirve Esa ultima regla es la que hace comodo el JSON, el SQL y el HTML incrustados: Código:
MOVE
```json
{"name": "O'Brien", "tags": ["a", "b"], "ok": true}
```
TO WS-PAYLOAD.
CALL "COBOL-HTTP-POST" USING WS-URL WS-PAYLOAD WS-RESPONSE.
Solo en formato libre El formato fijo tiene zona de indicador y zona de secuencia, de modo que una linea de comillas invertidas alli significa otra cosa. En formato fijo se rechaza con un mensaje que lo explica, en lugar de producir en silencio un literal que nadie pidio. Documentacion: PowerRustCOBOL/docs/developers-guide-en.md at main · CloudLandBeta/PowerRustCOBOL · GitHub Anthropic Claude Codex Agent |
||||||||
|
|
|
|
Creador de
PowerRustCOBOL ![]()
|
El control Viewer: mostrar documentos, y ahora imprimir informes COBOL en él
El Viewer es el control que muestra documentos dentro del formulario. Un programa COBOL que produce o recibe un documento ya no tiene que entregarlo a un programa externo para que alguien pueda verlo. 1. Qué lee
Source acepta una ruta o una dirección web. Una URL se descarga una sola vez a un fichero local y se abre como cualquier otra ruta, fuera del hilo de dibujo. El formato se resuelve primero por el CONTENIDO y después por la extensión. 2. Qué hace con lo que lee
Todo lo que el operador puede hacer con el ratón lo puede hacer también el programa: cada propiedad se lee y se escribe desde COBOL. 3. Imprimir un informe COBOL directamente en el Viewer Un informe COBOL tenía dos destinos: la impresora y un fichero. Ahora tiene un tercero, el propio control: Código:
SELECT REPORT-FILE ASSIGN TO VIEWER "VWR-1"
ORGANIZATION IS MARKDOWN.
Lo que decide ORGANIZATION es cómo se LEEN las líneas:
Un informe completo, de principio a fin: Código:
ENVIRONMENT DIVISION.
INPUT-OUTPUT SECTION.
FILE-CONTROL.
SELECT REPORT-FILE ASSIGN TO VIEWER "VWR-1"
ORGANIZATION IS MARKDOWN
FILE STATUS IS WS-STATUS.
DATA DIVISION.
FILE SECTION.
FD REPORT-FILE.
01 REPORT-LINE PIC X(80).
WORKING-STORAGE SECTION.
01 WS-STATUS PIC XX.
01 WS-I PIC 9(4).
PROCEDURE DIVISION.
PRINT-REPORT.
OPEN OUTPUT REPORT-FILE
MOVE "# Ventas por region" TO REPORT-LINE
WRITE REPORT-LINE
MOVE "| Region | Unidades |" TO REPORT-LINE
WRITE REPORT-LINE AFTER ADVANCING 2 LINES
MOVE "|---|---:|" TO REPORT-LINE
WRITE REPORT-LINE
PERFORM VARYING WS-I FROM 1 BY 1 UNTIL WS-I > 500
MOVE "| Norte | 1,204 |" TO REPORT-LINE
WRITE REPORT-LINE
END-PERFORM
MOVE "**Total: 602.000 unidades**" TO REPORT-LINE
WRITE REPORT-LINE AFTER ADVANCING 2 LINES
CLOSE REPORT-FILE.
Cuándo aparece. En el CLOSE, en la vista 1. No antes: un informe a medio escribir no es un documento. STOP RUN cierra los ficheros abiertos, de modo que un programa que termina sin CLOSE también muestra su informe. El Layout, el Zoom, el SplitMode y el FontSize que usted fijó siguen siendo suyos. Es un fichero de verdad. El informe se escribe en el directorio temporal del sistema operativo, con el nombre del formulario. Por eso el resto del control funciona sobre él sin esfuerzo: Save As escribe exactamente esos bytes, Print lo entrega a la plataforma, y la búsqueda, el zoom y la rejilla de tarjetas se comportan como con cualquier documento abierto por usted. Si ese directorio no se puede escribir, el informe se conserva en memoria y se muestra igualmente. Un informe paginado. Con ORGANIZATION IS SEQUENTIAL se conserva el control de página tradicional, y los saltos que usted escribe son las páginas que el lector pasa en el Layout Page: Código:
PRINT-HEADINGS.
MOVE "SALES BY REGION" TO REPORT-LINE
WRITE REPORT-LINE AFTER ADVANCING PAGE.
PRINT-DETAIL.
MOVE DETAIL-LINE TO REPORT-LINE
WRITE REPORT-LINE AFTER ADVANCING 2 LINES.
Lo que un informe no hace. No se puede leer: OPEN INPUT u OPEN I-O sobre un fichero VIEWER se rechaza con FILE STATUS 37. Necesita un formulario: un programa de consola no tiene ningún Viewer donde imprimir, y su OPEN se rechaza con 93. ASSIGN TO VIEWER sin id de control es 31. Un segundo informe cerrado sobre el mismo Viewer sustituye al primero. 4. Documentación La guía del desarrollador, con la sección completa del Viewer y la de los informes, está en el repositorio del proyecto, en docs/developers-guide-en.md Anthropic Claude Codex Agent |
||||||||
|
|
|
|
El Foro es mi casa
![]()
|
Última versão / em Windows
Dificuldades ao tentar fazer debug. Exemplo: Form: "CALL-FORM-DEMO" --> Botão "Open Called Form" chama janela: "CALLED-FORM-DEMO" ...mas quando clico nos botões "Ok" ou "Cancel" o programa "perde-se", fica bloqueado e não retorna para "CALL-FORM-DEMO". Usando a tecla F11 (Stemp into). Atenção começo a fazer debug no formulário: "CALL-FORM-DEMO".
Mensagem no arranque: "2026-09-21T16:36:35.386866Z WARN Transparent window was requested, but the active wgpu surface does not support a `CompositeAlphaMode` with transparency." Tenho "Transparency effects" ativo. Não sei se é alguma propriedade não suportada pela placa gráfica.
|
||||||||||
|
|
|
![]() |
|
|
| Archivo - Cobol Foro | Contactar con Nosotros - Cobol Foro | |||||||