Configuración IDSE IMSS 2024-2025 Este artículo surge como respuesta a las numerosas consultas que he recibido sobre cómo configurar equipos con Windows 10 y 11 para la renovación de certificados en IDSE IMSS. Reconozco que este proceso puede ser complicado para muchos, por lo que he decidido compartir esta guía con la esperanza de que sea de utilidad para aquellos que lo necesiten. La información es aplicable tanto para Windows 10 como para Windows 11. Paso 1.- Se recomienda desinstalar todos los java del equipo y bajar e instalar unicamente la versión de 32bits, que se puede descargar desde: https://www.java.com/es/download/manual.jsp Revisar que sea la ultima versión de JAVA de 32bits (a su fecha de instalación). Paso 2.- Editar dos archivos: C:\Program Files (x86)\Java\jre-1.8\lib\security : javaws.security y java.policy Agregar al final de cada archivo, la suguiente linea: permission java.io.FilePermission "<<ALL FILES...
Se muestra un ejemplo, de como realizar la implementación de Múltiples actualizaciones en una sola petición , es decir enviando una lista de objetos, y usando la clase ListSerializer realizamos las actualizaciones (inserciones u eliminaciones).
El modelo para el ejemplo
La Vista
defpost(self, request):
""" Ejemplo de manejo de listas en Serializer
Para este ejemplo asumimos lo siguiente:
Se tienen que enviar todos los datos existentes de los empleados en el JSON ya que
se comparara con la base de datos y :
1.- Si se encuentran se actualizan los datos,
2.- Si no existen en la base de datos se crean,
3.- Si se encuentran en la base de datos, pero no fueron pasados en el JSON se elimnan.
"""
# Obtener el JSON.
data = request.data
# Obtener los datos de la base de datos
emp = Employes.objects.all()
#Es necesario pasarlo a listas
_arr_emp = [entryforentryinemp]
# Serializar los datos
se = serializers.AddListEmployesSerializer(instance=_arr_emp, data = data, many = True)
#list_serializer_class , nos sirve para trabajar con varios objetos
#en forma de listas, util para Insert, Update, Delete
list_serializer_class = UpdateEmployesSerializer
model = Employes
fields = '__all__'
y este a su vez implementa de una clase ListSerializer, para ello se modifica el serializar usando la clase list_serializer_class
El atributo employeid = serializers.IntegerField() es requerido (la documentación sugiere usar la clave primaria), para poder crear una clave del diccionario que se creara en la clase UpdateEmployesSerializer .
# Realizamos las creaciones si no se encuentran en data_mapping,
# y las actualizaciones si se encuentran keys en data_mapping
ret = []
for_id, dataindata_mapping.items():
emp = mapping.get(_id, None)
ifempisNone:
ret.append(self.child.create(data)) #Si no se encuentra se crea
else:
ret.append(self.child.update(emp, data)) #Se se encuentra se actualiza
# Realizamos las eliminaciones, si no se encuentra en data_mapping
for_id, datainmapping.items():
if_idnotindata_mapping:
data.delete()
returnret
En la implementación de la clase UpdateEmployesSerializer , pasamos dos listas, la lista de valores enviados en el request del JSON, y comparando con la lista de valores de la base de datos:
1.- Si los datos JSON vs BD no se encuentran se crean
2.- Si en el JSON vs BD se encuentran se actuliza
3.- Si en la BD Vs JSON no se encuentran datos, se eliminan de la BD.
Para consumir, pasar en el body de la petición la lista de valores (Para el ejemplo usamos POST)
Configuración IDSE IMSS 2024-2025 Este artículo surge como respuesta a las numerosas consultas que he recibido sobre cómo configurar equipos con Windows 10 y 11 para la renovación de certificados en IDSE IMSS. Reconozco que este proceso puede ser complicado para muchos, por lo que he decidido compartir esta guía con la esperanza de que sea de utilidad para aquellos que lo necesiten. La información es aplicable tanto para Windows 10 como para Windows 11. Paso 1.- Se recomienda desinstalar todos los java del equipo y bajar e instalar unicamente la versión de 32bits, que se puede descargar desde: https://www.java.com/es/download/manual.jsp Revisar que sea la ultima versión de JAVA de 32bits (a su fecha de instalación). Paso 2.- Editar dos archivos: C:\Program Files (x86)\Java\jre-1.8\lib\security : javaws.security y java.policy Agregar al final de cada archivo, la suguiente linea: permission java.io.FilePermission "<<ALL FILES...
Al momento de cargar un reporte con crystal reports marca el siguiente error: Este error se debe a un mal uso que le daba a los FormulaFields , hasta la fecha no había tenido la necesidad de asignarle un valor con saltos de linea, por lo que la siguiente linea de código en C# me funcionaba bien : rpt . DataDefinition . FormulaFields[ "NombreFieldinReporte" ] . Text ="\"" + " Linea 1" + "\""; // Se imprme "Linea 1" Pero lo que deseaba pasar al reporte ahora era lo siguiente: // "Linea 1" // "Linea 2" Pero los tradicional salto de pagina (\n o \r) no funcionaban de la manera que se espera en Crystal Reports ,sin más rollo lo que necesita Crystal reports para el salto de linea es el caracter ChrW(13), para asignárselo al reporte debe pasarme de la siguiente manera: // "Linea 1" + ChrW(13) + "Linea 2" rpt . DataDefinition . FormulaFields[ "NombreFieldinR...
La primera vez que intente realizar una operación de agrupación en Linq con varios campos, tuve ciertos problemas en entender la sintaxis de GroupBy , pero con una visita a MSDN me creo más confusión jejeje. Para explicar el uso de Group By con varias columnas, os dejo el siguiente ejemplo. Usaremos la estructura de la siguiente Tabla de empleados. EmpleadoId Empleado EmpresaId DeptoId 1 Fry 1 A 2 Bender Bending 2 A 3 Hubert 1 B 4 Dr. Zoidberg 2 A 5 Turanga Leela 1 A Si quisiéramos devolver las agrupaciones por EmpresaId, y DeptoId, tendremos como resultado: EmpresaID DeptoId TotalEmpleadosPorDepto 1 A 2 1 B 1 2 A 2 En Sql Seria algo como: SELECT EmpresaID,DeptoID,COUNT( DeptoID) AS Tot...
Comentarios
Publicar un comentario