Problemas en impresión de actas de promocion

Buen dia, estoy teniendo problema en la impresión de actas de promocion, personalizadas para imprimir en a4, operacion cur00008. Llegué a un punto que no se con que mas probar y necesito ayuda urgente.
Tengo tres problemas

  1. No ordena por apellido y nombre en forma alfabetica
  2. No respeta la cantidad de folios por pagina parametrizados en 15:
    Si tengo un acta con 35 alumnos promocionadospor Ej, pone 17 en la primera pagina, 9 en la segunda y 16 en la tercera. Adjunto impresión.
  3. la númeración ascendente que debe ir en cada linea, para control, no me resulta.
    Probé con getrow() y no me corta la numeración en la siguiente pagina, o sea no comienza de 1 sino que sigue con el conteo
    Probé con insertar la columna renglon, pero no muestra los números, si copio este campo desde otra dw si los muestra.
    En algunos casos la númeración comenzaba desde el 2.
    Envio la dw por si acaso.
    Saludos.

acta_promo.rar (69.6 KB)

Hola Monica, estuve viendo la datawindows y veo algunas cosas que no entiendo:

  1. La datawindow tiene un agrupado por “folio”. Este dato de folio se corresponde con el folio del acta de regulares y no del acta de promocion. En todo caso hay que usar el campo “folio_promocion”.

  2. En la query se filtran los alumnos por su nota, donde la nota es > 7. ¿Porque usas esta condicion? ¿Solo para incluir en el acta aquellos alumnos que promocionan y sacar los que no promocionan?

  3. Si miras el orden de la datawindow esta por Folio + Renglon. Con lo cual los ordenará segun como esten registrados los datos en estos dos campos (sga_curs_pendiente.folio y sga_curs_pendiente.renglon)
    En la query podes poner un orden. En este caso veo que esta ordenado por apellido y nombre del alumno, pero como en la datawindow esta definido el orden por folio + renglon, es que finalmente toma este orden. Este orden esta asi definido porque existe un grupo por “folio” y que cambia de página cada vez que cambia de folio (Propiedad “New page on group break” del Grupo Nro 1)

Cuando se crean las actas, el orden se genera en base a lo que esete definido en el parametro orden_detalle_actas_cursado
1 = Por nro de Legajo
2 = Por apellido + nombres
3 = Tipo de Documento + Nro de documento

¿Que opcion tienen definido en ese parametro?

Al crearse el acta de cursada, se registra folio y renglon en base a este orden en la tabla sga_curs_pendiente (campos folio_regular y renglon_regular).
Lo mismo cuando se genera el acta de promocion (sga_curs_pendiente.folio_promocion, sga_curs_pendiente.renglon_promocion)


En la cabecera del acta, que dato quedo registrado en renglones_folio?

SELECT renglones_folio FROM sga_actas_promo where acta = 201700295;

Recordar que la cantidad de renglones por folio se toma del paràmetro lineas_folio_acta_cursados. Y cuando se crea el acta se recupera este valor y se graba en el campo sga_actas_promo.renglones_folio.

Muchas gracias Ale, la situación es esta:
1- El agrupamiento en la DW estaba por acta originalmente, en una de tantas prueba yo le cambié por" folio", hoy volví a probar con “Acta” y no hubo cambios
2- En las actas de promoción solo aparecen los promocionados, si está esa condición no la ví, me centré en cambiar el formato, acomodar campos y poner lineas y rotulos ya que ya no tendremos actas pre impresas. Estas actas personalizadas fueron heredadas de la unse en su momento y ya estaban asi.
3- Donde se ve cual es el orden de la DW? El orden en el query es otra de las cosas que cambie, originalmente estab :
ORDER BY dba.sga_curs_pendiente.folio_promocion,
dba.sga_curs_pendiente.renglon_promocion
Hoy volví a probar como estaba antes y me ordena de a 17 por folio y nada de orden alfabetico en los apellidos.
En el parametro orden_detalle_actas_cursado tengo la opcion 2: Por apellido + nombres
El resultado de SELECT renglones_folio FROM sga_actas_promo where acta = 201700295; es 30
Tengo en parametros y siempre estuvo asi:
lineas_folio=15
lineas_folio_actas_cursada=30
Acabo de probar poniendo 15 en lineas_folio_actas_cursada y nada, ningún efecto.
Alejandro, como te dije solo estoy tocando formatos, estas actas son las que ahora estan en producción y emiten las actas de promocion con 15 renglones y en orden alfabetico, el agrupamiento es por acta, los parametros son los que te dije. Creo que el problema comenzó al cambiar el formato de la hoja y pasarlo a A4.
Ahora la dejé como estaba antes:
Agupada por: acta
Orden en la query: ORDER BY dba.sga_curs_pendiente.folio_promocion, dba.sga_curs_pendiente.renglon_promocion
lineas_folio=15
lineas_folio_actas_cursada=30
resultado, imprime 17 renglones, desordenados por apellido y nombre.
Voy a seguir probando, no se bien que, pero te pido que me sigas guiando.
Saludos.

Me fije en las acta de regulares que actualmente se imprimen en A4, las de promoción actualmente en papel continuo preimpreso, y cambié la configuración de la hoja de la misma manera en las acta en cuestión:
Unidad: power builder, antes tenia 1/1000 (centimetros(3)
En la solapa Print specification:
Left Margin: 110
Right Margin:110
Top Margin: 96
Bottom Margin:96
Paper orientation: Portraid(2)
Paper Size: A4 210 x297

Yo habia puesto, de acuerdo a otra dw que tenia:
Unidad: 1/1000 (centimetros(3)
En la solapa Print specification:
Left Margin: 2
Right Margin:1
Top Margin: 2
Bottom Margin:1
Paper orientation: Portraid(2)
Paper Size: A4 210 x297

Resultado, imprime 19 renglones, y claro, sigue desordenado por apellido y nombre
Cual es la configuración que debería utilizar?, Porque no respeta los parametrizado?
Saludos.

El resultado de SELECT renglones_folio FROM sga_actas_promo where acta = 201700295; es 30 Tengo en parametros y siempre estuvo asi: lineas_folio_actas_cursada=30 Acabo de probar poniendo 15 en lineas_folio_actas_cursada y nada, ningún efecto.

Por lo que decis, tenes definido el parametro de cantidad de renglones por folio en actas de cursdas y promociones con un valor de 30. Con lo cual al generarse el acta de cursada y prmocion ordenará los alumnos por apellido + nombre y ubicará 30 alumnos por folio.

Si este valor esta bien entonces no tenes que hacer nada. Si este valor no corresponde entonces no solo tenes que cambiar el valor del parámetro lineas_folio_actas_cursada, sino tambien cambiar este valor en las cabeceras de las actas de promocion y cursadas que estan abiertas porque al crearse el acta se registra este dato en la cabecera del acta y luego siempre se hace referencia al valor que ya tiene definido el acta y no el del parametro (sga_actas_promo.renglones_folio y sga_actas_cursado.renglones_folio).

Respecto a no imprimir los alumnos que no promocionaron en el acta de promocion, ni tampoco incluirlos en el acta al momento de cerrar el acta de promocion, entonces deben configurar el parametro inserta_alumnos_no_promocionados_en_acta con el valor N (no incluir alumnos que no promocionaron en el acta de promocion)

¿ Que datos devuelve la siguiente consulta?
Seguramente devuelve esos alumnos por cada folio. No llega a 30 en cada folio porque no se estan mostrando los alumnos que sacaron menos de 7.


SELECT folio_promocion, count(*)
    FROM sga_curs_pendiente
WHERE comision in (SELECT comision FROM sga_actas_promo where acta = 201700295)
 AND promocional = 'S'
 AND resultado = 'P'
GROUP BY folio_promocion
ORDER BY folio_promocion;

¿Cuando imprimen el acta desde la operacion cur00008, es ya teniendo todas las notas cargadas?

Creo que faltaria personalizar el proceso de impresion desde esta operación por este tema de que no es que van todos los alumnos promocionales al acta, sino solo aquellos que promocionaron, con lo cual hay que refoliar el acta en el momento de la impresion para que queden correctamente los alumnos que promocionaron en cada folio.

Ale, hice lo que me recomiendas cambie el valor del parámetro lineas_folio_actas_cursada a 15 y cambie en las cabeceras sga_actas_promo.renglones_folio y sga_actas_cursado.renglones_folio. Tampoco me varió la cantidad de registros por hoja. Dejando estos valores cambié la configuración de la hoja y ahí si me volvió a cambiar la cantidad de registros pero siempre mas de 15.
Si el estar definido en 30 el valor de ese parametro tiene que imprimir 30 por folio, porque antes, desde que instalamos el guarani en el 2008 siempre imprimió 15 renglones? y porque me cambia la cantidad de renglones ahora cada vez que toco la configuración de la hoja.
El parametro inserta_alumnos_no_promocionados_en_acta está en N

Perdón, no completé las respuestas a tus preguntas. la respuestas al select es:
SELECT folio_promocion, count(*)
FROM sga_curs_pendiente
WHERE comision in (SELECT comision FROM sga_actas_promo where acta = 201700295)
AND promocional = ‘S’
AND resultado = ‘P’
GROUP BY folio_promocion
ORDER BY folio_promocion;

1 30
2 12

¿Cuando imprimen el acta desde la operacion cur00008, es ya teniendo todas las notas cargadas? La respuesta es SI.

A lo que dices refoliar el acta, me parece que si dejo el agrupamiento por acta eso se solucionaría, el problema es que quede en 15 la cantidad de renglones. Ahora está fluctuando entre 17 y 19 de acuerdo al formato de la hoja.
Del ejemplo que te mandé, que hacia cualquier cosa, agrupando por acta ese panorama cambió, imprime un nro fijo por hoja, solo que nó 15, que es lo que necesitamos.
No sé, lo que sea decime, necesitamos que esto funcione.

Debes:

  1. Cambiar el valor del parametro de 30 a 15.
  2. Cambiar el dato renglones_folio de las cabeceras de las actas de cursadas y promociones abieras de 30 a 15.
  3. Volver a refoliar las actas abiertas, ya que quedron definidas con 30 alumnos por folio y no 15 como es lo que quieren que quede finalmente.
  4. Modificar la datawindow usada para imprimir acta de promocion para que agrupe por el campo folio_promocion y ordene por folio y renglon
  5. Modificar el proceso de impresion de acta de promocion desde cur00008 por este tema de que solo quieren imprimir en el acta los alumnos que promocionaron.

Ingresen una solicitud y vemos de seguir este tema por alli.

Gracias Alejandro, ahora hago el pedido.