Qué hay aquí... Aspel avanzado en resumen

Hola Estimad@s

Durante años me he dedicado al trabajo con sistemas, he trabajado con muchísimos sin problemas, diferentes bases de datos, programas donde tengo el control de los fuentes y aquellos que no, empresas grandes, pequeñitas y medianas, sin embargo llevo 5 años trabajando en una empresa donde manejan Aspel hasta en la sopa y ha sido más que un parto el entendimiento de este sistema, por ello he decidido mantener este foro.

Usuarios de los sistemas Aspel sabrán que sus sistemas, prácticamente te obligan a contratar pólizas de soporte con un "proveedor autorizado", mandándote casi siempre a reinstalar el sistema o incluso a hacer una reinstalación limpia cuando la mayoría de las veces es solo cuestión de hacer un pequeño ajuste al archivo de empresas o una bandera dentro de la base de datos.

Qué encontrará en el sitio

Encontrarán más que nada problemas comunes a nivel sistema, reportería dentro y fuera del sistema, manejo de la base de datos firebird, explotación de todos los sistemas Aspel cuando migran la información a SQL Server, problemas comunes con la instalación y mantenimiento, manejo de impresoras, etc.

Si por alguna causa usted requiere soporte avanzado o alguna solución que tenga que ver con sus sistemas Aspel, lo invito a navegar en la parte comercial de CyberAdmin soluciones.

 

Cada cuándo se postearán entradas

Lo haré semanalmente y conforme la comunidad lo vaya pidiendo. Tengo un trabajo de tiempo completo, pero como todo me doy mi tiempo libre y en la etapa de mi vida en la que estoy, tengo varios proyectos en mente y uno de ellos es este precisamente.

Reglas del foro

Solo pondré dos y es que no permitiré los insultos de ningún tipo y no al spam de artículos que no tengan nada que ver con este foro.. Estoy aquí para compartir mi conocimiento y espero ustedes hagan lo mismo con lo poco o mucho que sepan.

 

Comentarios   

0 #20 Carlos Ramirez 03-07-2018 17:57
Hola es mi primer comentario en su foro, veo que es muy bueno, tengo una situación espero me pueda resolver mi duda, me gustaría agregar un nuevo campo en un reporte del sistema PROD 3.0, exactamente en el Reporte Diario de movimientos, me gustaría agregar el campo "SAE" que se encuentra en menú-seguimiento-consulta de seguimientos por orden.

Muchas gracias de antemano.

saludos.
0 #19 R 24-11-2017 00:06
Cito a R:
Cito a R:
Encontré que el id_tabla = 44 es el último movimiento consecutivo de inventarios. Cuando encuentre otro(s) lo(s) envío ...

En la primer respuesta no supe como ligarla a la pregunta original !!!


Siguiendo tu consejo:
===================================================
2 =====> CVE_OBS -de la tabla O_PROV01
20 =====> CVE_OBS -de la tabla O_CUEN01
21 =====> CVE_OBS -de la tabla O_PAGA01
44 =====> NUM_MOV -de la tabla MINV01
48 =====> REG_LTPD -de la tabla LTPD01
49 =====> CVE_OBS -de la tabla O_LTPD01
52 =====> CVE_OBS -de la tabla O_CLIE01
54 =====> CVE_OBS -de la tabla OINVE01
55 =====> CVE_OBS -de la tabla O_MINVE01
56 =====> CVE_OBS -de la tabla OBS_DOCF01
57 =====> CVE_OBS -de la tabla OBS_DOCC01
62 =====> CVE_BITA -de la tabla BITA01
67 =====> E_LTPD -de la tabla E_LTPD01
0 #18 Super User 23-11-2017 23:43
Como bien lo indicas son muchos los conceptos que se manejan en Aspel y todos tienen su foliador. La manera más sencilla es utilizar el sistema de forma exclusiva y verificar después de algún movimiento de guardado el registro que se modificó para obtener el id que tienes que modificar en tu desarrollo.

No todas las tablas se llenan desde este control tales como las que se ocupan en la facturación ya que para esas tomas FOLIOSFXX.

Como bien indicas el 44 es el de movimientos al inventario, 70 es el que se utiliza en INFENVIOXX, 56 es para observaciones de documentos OBS_DOCFXX, El folio de movimientos al inventario enlazaado es el 32 (Para hacer más de uno con la misma referencia).

No tengo un archivo con el control de todos los consecutivos, sin embargo haciendo lo que te digo de un usuario único, puedes obtener facilmente el ID que se afecta para determinado registro.

Cito a R:
Cito a R:
Encontré que el id_tabla = 44 es el último movimiento consecutivo de inventarios. Cuando encuentre otro(s) lo(s) envío ...

En la primer respuesta no supe como ligarla a la pregunta original !!!




Cito a R:
Saludos, gracias por mantener esta página/sitio para usuarios de los sistemas aspel. Este es mi primer comentario/solicitud, y es referente a la información contenida en la tabla tblcontrolxx; (con el programa database tour pro vi que solamente tiene dos campos: id_tabla y ult_cve, y que hay ochenta registros -no son muchos) no se requiere mucho para concluir que: id_tabla se refiere a una tabla específica en la base de datos y ult_cve es el número del último registro en la tabla correspondiente, el detalle es a que tabla específicamente se refiere cada id_tabla? Lo anterior me interesa porque me gustaría programar desde ms access un formulario que ayude a la captura en verdad rápida de los inventarios físicos, sin tener que seguir todo el proceso dentro del sae. Como quiero ir agregando movimientos de entrada o salida (según sea el caso: existencia real capturada en el formulario contra existencia teórica en la tabla invexx), entre otros muchos campos que tengo que grabar en cada uno de esos movimientos (en la tabla minvexx) el campo num_mov e inmediatamente actualizarlo en la tblcontrolxx. En fin, creo que sería súper útil conocer a que tabla se refiere cada id_tabla. Nuevamente saludos y de antemano gracias.
0 #17 R 23-11-2017 23:11
Cito a R:
Encontré que el id_tabla = 44 es el último movimiento consecutivo de inventarios. Cuando encuentre otro(s) lo(s) envío ...

En la primer respuesta no supe como ligarla a la pregunta original !!!
0 #16 R 23-11-2017 23:10
Encontré que el id_tabla = 44 es el último movimiento consecutivo de inventarios. Cuando encuentre otro(s) lo(s) envío ...
0 #15 R 23-11-2017 22:49
Saludos, gracias por mantener esta página/sitio para usuarios de los sistemas aspel. Este es mi primer comentario/solicitud, y es referente a la información contenida en la tabla tblcontrolxx; (con el programa database tour pro vi que solamente tiene dos campos: id_tabla y ult_cve, y que hay ochenta registros -no son muchos) no se requiere mucho para concluir que: id_tabla se refiere a una tabla específica en la base de datos y ult_cve es el número del último registro en la tabla correspondiente, el detalle es a que tabla específicamente se refiere cada id_tabla? Lo anterior me interesa porque me gustaría programar desde ms access un formulario que ayude a la captura en verdad rápida de los inventarios físicos, sin tener que seguir todo el proceso dentro del sae. Como quiero ir agregando movimientos de entrada o salida (según sea el caso: existencia real capturada en el formulario contra existencia teórica en la tabla invexx), entre otros muchos campos que tengo que grabar en cada uno de esos movimientos (en la tabla minvexx) el campo num_mov e inmediatamente actualizarlo en la tblcontrolxx. En fin, creo que sería súper útil conocer a que tabla se refiere cada id_tabla. Nuevamente saludos y de antemano gracias.
0 #14 Stiven Serrano 06-07-2017 18:25
Hola, buenas tardes.

Estoy en busca de un software o tarificador que se pueda controlar desde mi pc para las consolas que tengo en mi establecimiento.

Existe algo como esto? si es así quisiera saber el método de adquirirlo.

Muchas Gracias
0 #13 Super User 03-07-2017 18:51
Cito a Jorge Rios Gonzalez:
Buen día a todos. mi solicitud de ayuda es sobre Aspel SAE 6.0

Requiero agilizar el proceso de generar Facturas partiendo de Remisiones.

Caso: Una factura de 120 renglones se formó de la información de 20 remisiones pero solo algunos articulo de cada remisión.

Cada remisiones pueden estar compuestas hasta de 200 renglones o mas.

El proceso en el SAE es lento y tortuoso, ¿alguien tendrá algún desarrollo externo que me ayude?


Hola Jorge.

Lo que quieres hacer es bastante sencillo. Aquí lo complicado es primero saber qué remisiones están involucradas y una vez sabiendo estas, desplegar las partidas y permitirte seleccionar las partidas de estas 20 remisiones para que tu las marques y finalmente te las pase a una factura.

Yo haría lo siguiente

1. En una hoja de excel pediría el código del cliente y un rango de fechas de las remisiones junto con un botón de "Generar remisiones" esto te llenaría una hoja 2 con todas las remisiones no facturadas en el rango seleccionado del cliente seleccionado. En esa hoja, el usuario bien podría ya sea filtrar o marcar en una columna las remisiones involucradas. Al terminar de marcarlos tendría un nuevo botón en esta hoja para que me genere en una hoja 3 todas las partidas y de igual forma mediante filtros o mediante una columna me indique las partidas aa guardar. Finalmente, ya teniendo toda esta información generar la factura.

Consideraciones especiales:
1. Es altamente recomendable que tengas tu base en SQL Server para que toda la inteligencia de crear la factura la metas dentro de un Store Procedure
2. Considera que ya está en puerta el SAE7 y aunque en teoría no debería modificar la estructura de las facturas uno nunca sabe de ASPEL

Puedes empezar con eso que te digo y en caso que te atores te puedo ayudar.
0 #12 Jorge Rios Gonzalez 03-07-2017 18:03
Buen día a todos. mi solicitud de ayuda es sobre Aspel SAE 6.0

Requiero agilizar el proceso de generar Facturas partiendo de Remisiones.

Caso: Una factura de 120 renglones se formó de la información de 20 remisiones pero solo algunos articulo de cada remisión.

Cada remisiones pueden estar compuestas hasta de 200 renglones o mas.

El proceso en el SAE es lento y tortuoso, ¿alguien tendrá algún desarrollo externo que me ayude?
0 #11 nelson 18-05-2017 18:12
Cito a Super User:
Cito a nelson:
Buen día, la verdad he tratado de generar un reporte tipo póliza a partir del NOI 8, la cuestión es que muchos conceptos que necesito como el isr,imss y otros, acaso no existe una tabla donde pueda encontrar todos los conceptos que se generan en el reporte de la nómina?, espero puedas ayudarme. Saludos.



Te comento que en NOI hay una tabla que es el catálogo de percepciones y/o deducciones que es la pdDDMMAA01 para la empresa 1 y ya sabes dado el dia mes y año seleccionado de tu nómina el campo PER_O_DED cuando es 80 es Percepción y el 100 es Deducción. Ahora bien, al momento de cerrar la nómina (O antes si quieres hacer un cierre parcial simulas el cierre de la nómina y luego lo reabres), se crea una tabla muy interesante llamada RESINTPERDEDAAMMDD01 Para la empresa 1 y dados el dia y mes seleccionado de tu nómina, donde bien pudieras hacer un reporte en donde salga el concentrado por empleado de todos los conceptos que requieres. El query para hacer esto (Con una base de SQL Server) y suponiendo que tu nómina es del 31 de marzo del 2017 en la empresa 1, sería como sigue.

Recuerda que la tabla no se crea hasta que manualmente cierras la nómina.

select t.clave, t.nombre + ' ' + t.ap_pat_ + '' + t.ap_mat_ as Trabajador,
t.clave, t.clave + ' ' + t.nombre + ' ' + t.ap_pat_ + '' + t.ap_mat_ as NombreCompleto,
cp.nombre as Concepto, case when p.per_ded = 80 then 'Percepción' else 'Deducción' end as Tipo,
case when p.per_ded = 80 then p.valor else p.valor*(-1) end as Importe, cp.cuenta_coi as TipoPercepcion,
case when p.per_ded = 80 then 'P' + cast(cp.NUM_PERDED as varchar) else 'D' + cast(cp.NUM_PERDED as varchar) end as CodigoPercepción,
cp.nombre + ' (' + case when p.per_ded = 80 then 'P' + cast(cp.NUM_PERDED as varchar) else 'D' + cast(cp.NUM_PERDED as varchar) end + ')' as ConceptoConcatenado,
tot.totalpercepciones , tot.totaldeducciones
from resintperded31031701 p
inner join pd31031701 cp on cp.NUM_PERDED = p.NUM_PER and cp.PER_O_DED = p.PER_DED
inner join tb31031701 t on t.clave = p.CLAVE_TRAB
left join (select clave_trab, sum(case when per_ded = 80 then valor else 0 end) as TotalPercepciones,
sum(case when per_ded = 100 then valor else 0 end) as TotalDeducciones
from resintperded31031701 p group by clave_trab) tot on tot.clave_trab = t.CLAVE
where p.per_ded in(80,100) and cp.tipo_reg = 0 AND cp.STATUS = 'A'

Cito a Super User:
Cito a nelson:
Buen día, la verdad he tratado de generar un reporte tipo póliza a partir del NOI 8, la cuestión es que muchos conceptos que necesito como el isr,imss y otros, acaso no existe una tabla donde pueda encontrar todos los conceptos que se generan en el reporte de la nómina?, espero puedas ayudarme. Saludos.



Te comento que en NOI hay una tabla que es el catálogo de percepciones y/o deducciones que es la pdDDMMAA01 para la empresa 1 y ya sabes dado el dia mes y año seleccionado de tu nómina el campo PER_O_DED cuando es 80 es Percepción y el 100 es Deducción. Ahora bien, al momento de cerrar la nómina (O antes si quieres hacer un cierre parcial simulas el cierre de la nómina y luego lo reabres), se crea una tabla muy interesante llamada RESINTPERDEDAAMMDD01 Para la empresa 1 y dados el dia y mes seleccionado de tu nómina, donde bien pudieras hacer un reporte en donde salga el concentrado por empleado de todos los conceptos que requieres. El query para hacer esto (Con una base de SQL Server) y suponiendo que tu nómina es del 31 de marzo del 2017 en la empresa 1, sería como sigue.

Recuerda que la tabla no se crea hasta que manualmente cierras la nómina.

select t.clave, t.nombre + ' ' + t.ap_pat_ + '' + t.ap_mat_ as Trabajador,
t.clave, t.clave + ' ' + t.nombre + ' ' + t.ap_pat_ + '' + t.ap_mat_ as NombreCompleto,
cp.nombre as Concepto, case when p.per_ded = 80 then 'Percepción' else 'Deducción' end as Tipo,
case when p.per_ded = 80 then p.valor else p.valor*(-1) end as Importe, cp.cuenta_coi as TipoPercepcion,
case when p.per_ded = 80 then 'P' + cast(cp.NUM_PERDED as varchar) else 'D' + cast(cp.NUM_PERDED as varchar) end as CodigoPercepción,
cp.nombre + ' (' + case when p.per_ded = 80 then 'P' + cast(cp.NUM_PERDED as varchar) else 'D' + cast(cp.NUM_PERDED as varchar) end + ')' as ConceptoConcatenado,
tot.totalpercepciones , tot.totaldeducciones
from resintperded31031701 p
inner join pd31031701 cp on cp.NUM_PERDED = p.NUM_PER and cp.PER_O_DED = p.PER_DED
inner join tb31031701 t on t.clave = p.CLAVE_TRAB
left join (select clave_trab, sum(case when per_ded = 80 then valor else 0 end) as TotalPercepciones,
sum(case when per_ded = 100 then valor else 0 end) as TotalDeducciones
from resintperded31031701 p group by clave_trab) tot on tot.clave_trab = t.CLAVE
where p.per_ded in(80,100) and cp.tipo_reg = 0 AND cp.STATUS = 'A'

Muchísimas gracias por la información, claro entiendo el proceso que me indicas la única duda que me surge es que tenemos cerrados todos los periodos y al buscar la tabla RESINTPERDEDAAMMDD01, de un periodo en especifico se encuentra vacía lo he revisado con varios periodos y no encuentro datos, voy hacer la prueba de reabrir una nómina, verificar si la tabla existente se llena de información, aquí el tema es encontrar en que momento se encuentra llena exactamente. Gracias nuevamente. Saludos

No tienes derecho suficientes para publicar contenido