StrTrazabilidad – Serie en albaranes de venta

El cálculo de la serie de los albaranes debería ser sencillo e intuitivo, y recomendamos que: a) Sólo haya una serie de albaranes por cada delegación b) Si queremos que haya más series, deberían ir asociadas al tipo de cliente (punto 6º del orden de prioridad). Sin embargo, en algunas empresas se ha requerido que Leer másStrTrazabilidad – Serie en albaranes de venta[…]

Linux/Docker – Establecer zona horaria

El shell de LINUX usa por defecto la zona horaria del host. Para cambiar este comportamiento usamos la variable de entorno TZ. Para ver la configuración actual: $ timedatectl Podemos establecer la zona horaria con el comando en modo interactivo: $ tzselect Para que los cambios sean permanentes, deberemos modificar el archivo .profile usando el Leer másLinux/Docker – Establecer zona horaria[…]

SQL – Precio mínimo de los comparativos

Función SQL para obtener el precio mínimo de las ofertas de proveedores de los comparativos: CREATE FUNCTION F_COMPA_PRECIO_MIN(@EMPRESA VARCHAR(12),@OBRA VARCHAR(12),@COD_INTERNO VARCHAR(8)) RETURNS DECIMAL(18,4) AS BEGIN    DECLARE @PRECIO_MIN DECIMAL(18,4);    SET @PRECIO_MIN=(SELECT MIN(CP.PRECIO) PRECIO_MIN FROM T_COMPA_LIN L JOIN T_COMPA_PRE CP ON CP.EMPRESA=L.EMPRESA AND CP.OBRA=L.OBRA AND CP.COMPA=L.COMPA ANDCP.LINEA=L.LINEA WHERE L.EMPRESA=@EMPRESA AND L.OBRA=@OBRA AND  L.COD_INTERNO=@COD_INTERNO AND CP.PRECIO>0 );    RETURN @PRECIO_MIN END 

Tree – Crear campos adicionales en líneas de partes

En esta entrada os vamos a explicar como crear campos adicionales en las líneas de los partes de trabajo y que sean visibles y editables en la pantalla de introducción de partes. Creamos los campos usando el diccionario (preferiblemente para no tener que realizar la misma operación en cada empresa) o directamente en SQL Server Leer másTree – Crear campos adicionales en líneas de partes[…]

Tree – Configurar la gestión documental

En TREE podemos adjuntar documentos (normalmente archivos PDF aunque podemos adjuntar cualquier tipo de archivo) a cada entidad del programa (obras, precios, albaranes, facturas, personal, máquinas,…). Una pregunta habitual es cómo debemos configurar el programa para que los archivos que vinculemos sean visibles por todos los compañeros que usan Tree, y además poder disponer de Leer másTree – Configurar la gestión documental[…]

C# – Uso de HttpClient para devolver un DataTable

Si usamos una API-REST que nos devuelve un Datatable, es necesario deserializar el JSON obtenido. El siguiente ejemplo nos muestra como hacerlo: using System; using System.Data; using System.Net.Http; using System.Threading.Tasks; using Newtonsoft.Json; // You’ll need to install the Newtonsoft.Json NuGet package class Program { static async Task Main() { // Create an instance of HttpClient Leer másC# – Uso de HttpClient para devolver un DataTable[…]