Saltar a contenido

Ordenes de Transportes de recursos

Permite transportar recursos desde un origen hacia un destino, gestionando toda la información del transporte incluyendo el transportista, vehículo utilizado, chofer asignado y los recursos que se están transportando. Controla kilómetros de distancia, duración estimada del transporte y tiempo real mediante confirmaciones de inicio y fin. Las ubicaciones se seleccionan de la sección ubicaciones en mapa. Los transportes pueden estar en distintos estados (planificando, programado, transportando, transportado, cancelado) y cuando se marcan como concluidos actualizan automáticamente la ubicación de los recursos. Genera información de productividad y análisis para tacógrafo. Soporta transportes simbólicos y permite crear órdenes de transporte de regreso.

Información General

Propiedad Valor
ID 49ab5f2d-cdd7-4802-973b-9d2a824b6a9c
Tabla PostgreSQL tpr_10010421531
Etiqueta Plural Ordenes de Transportes de recursos
Texto principal automatico
Sección Lista Lista - Ordenes de Transportes de recursos (d6b49d7d-c725-4086-8965-65f1c3ea6968)
Sección Base Base - Ordenes de Transporte de recursos (4fad3e82-ae41-462b-b7bb-e5c8fb212e41)

Campos

Total de campos: 39 (10 del sistema, 29 personalizados)

Campos del Sistema

Campo Tipo Rol Columna PostgreSQL Relación Atributos
ID Relación - id Ordenes de Transportes de recursos -
Referencia Texto - nombre - -
Fecha Alta Dato Fecha Y Hora - fecha - -
Editado Fecha Y Hora - fecham - -
Eliminado Sí/No - eliminado - -
Usuario Creador del dato Relación - usuarioid Base - Entidades -
Sección (Relación Sistema) Relación - plantillapid - 🔴 Obligatorio
Posición (Orden) Decimal - posicion - -
Modificado Sí/No - modificado - -
Fecha Indice Actividad Fecha Y Hora - fechaia - -

Campos Personalizados

Campo Tipo Pestaña Columna Atributos Notas
Cancelado Sí/No Registro pr_50040602271 - -
Destinador Relación General pr_100104215312 🔒 Bloqueado, 👁 Oculto -
Hora local Hora Registro pr_10010421539 🔒 Bloqueado, 👁 Oculto -
Fecha Alta del registro Fecha Y Hora Registro pr_100104215311 🔴 Obligatorio Autorrellenado (Siempre): Fecha y Hora actual
Autor del alta Relación Registro pr_10010421537 🔴 Obligatorio Autorrellenado (Siempre): Campo (Sesión): La Entidad ( ID* )
Fecha de Inicio Fecha Y Hora General pr_60010421801 - -
Fecha de Fin Fecha Y Hora General pr_60010421802 - -
Vehículo de transporte Relación General pr_60010421804 - -
Chofer Relación General pr_10010421816 - -
Evaluar en agenda Sí/No General pr_60010421803 - Autorrellenado (Siempre): Constante: Sí
Estado Relación General pr_10010422115 🔴 Obligatorio, 🔒 Bloqueado -
Localización de destino Relación General pr_10040441061 🔴 Obligatorio -
Localización de origen Relación General pr_10040441062 🔴 Obligatorio -
Tipo de estado Entero General pr_10040441072 👁 Oculto, 📊 Cualquier valor numérico Autorrellenado (Siempre): Campo : Estado / Estado
Distancia en kilómetros Decimal General pr_20040545241 📊 Positivos o 0 -
Recursos transportando Entero General pr_30040545241 🔒 Bloqueado, 👁 Oculto, 📊 Cualquier valor numérico Autorrellenado (Siempre): Contar (Columna): ID ID *
Tipo Relación General pr_300405453830 - -
Tiempo Tacógrafo Entero General pr_40040545383 📊 Positivos o 0 -
Notas Texto Notas pr_40040545561 - -
Fecha confirmación de Fin Fecha Y Hora General pr_10040602054 - -
Orden de transporte de regreso Relación General pr_20040602097 - -
Tiempo Extra Entero General pr_10040602271 👁 Oculto, 📊 Cualquier valor numérico -
Fecha confirmación de Inicio Fecha Y Hora General pr_10040602272 - -
Fecha Inicio (Computable) Fecha Y Hora General pr_30040602273 👁 Oculto -
Fecha Fin (Computable) Fecha Y Hora General pr_30040602272 👁 Oculto -
Simbólico Sí/No Registro pr_20040602282 - Autorrellenado (Siempre): Campo : Tipo / Transporte simbólico
Alquiler Relación Alquiler pr_30010554491 - ⚠️ Módulo externo
Alquiler (Es entrega) Sí/No Alquiler pr_30010554492 - ⚠️ Módulo externo
Exportar en módulos Sí/No General pr_100104215310 👁 Oculto -

Scripts

Total de scripts: 10

Código de Scripts

Lógica de negocio ejecutada en los formularios automáticamente

Campo_Cambiado

if C.ReferenciaLocalizacionDeOrigen <> ''
    if C.ReferenciaLocalizacionDeDestino <> ''
        C.DistanciaEnKilometros = F.Truncate(F.Maps_KilometersBetween2Coordinates(C.ReferenciaLocalizacionDeOrigen.Coordenadas,C.ReferenciaLocalizacionDeDestino.Coordenadas))
        C.TiempoTacografo = F.Maps_MinutesBetween2Coordinates(C.ReferenciaLocalizacionDeOrigen.Coordenadas,C.ReferenciaLocalizacionDeDestino.Coordenadas)
    end if
end if

Campos utilizados: - Ordenes de Transportes de recursos > Localización de origen - Ordenes de Transportes de recursos > Localización de destino

Campo_Click

if C.ReferenciaLocalizacionDeOrigen = ''
    F.MsgBox('Debe rellenar origen.',0)
    F.CancelarEvento
    salir
end if



if C.ReferenciaLocalizacionDeDestino = ''
    F.MsgBox('Debe rellenar destino.',0)
    F.CancelarEvento
    salir
end if 



txt cafe = F.Concat('explorer.exe "https://dinaup.com/maps/rutax?o=',C.ReferenciaLocalizacionDeOrigen.Coordenadas,'&d=',C.ReferenciaLocalizacionDeDestino.Coordenadas,'"')
F.OSRunCMD(v.cafe,0,100)

Campos utilizados: - Botón

Campo_PreAgregarRelacion

F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaChofer.ID,C.ReferenciaChofer)
F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaVehiculoDeTransporte.ID,C.ReferenciaVehiculoDeTransporte)
F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaLocalizacionDeOrigen.ID,C.ReferenciaLocalizacionDeDestino)
F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaLocalizacionDeDestino.ID,C.ReferenciaLocalizacionDeOrigen)
F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeInicio.ID,C.FechaDeFin)
F.CopiarAgregarRelacion(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaTipo.ID,C.ReferenciaTipo)

Campos utilizados: - Ordenes de Transportes de recursos > Orden de transporte de regreso

Campo_Click

if C.FechaDeInicio = ''
    F.MsgBox('Para rellenar la fecha de fin automáticamente, la fecha inicio debe estar rellenada.',0)
else

    C.FechaDeFin = F.DateTime_AddMinutes(C.FechaDeInicio,C.TiempoTacografo)

endif

Campos utilizados: - Botón

Campo_Click

if C.FechaDeFin = ''
    F.MsgBox('Para rellenar la fecha de inicio automáticamente, la fecha fin debe estar rellenada.',0)
else

    C.FechaDeInicio = F.DateTime_AddMinutes(C.FechaDeFin,C.TiempoTacografo * -1)

endif

Campos utilizados: - Botón

Formulario_TickRecalculo

if C.FechaConfirmacionDeInicio = ''
    C.FechaInicioComputable = C.FechaDeInicio 
else
    C.FechaInicioComputable = C.FechaConfirmacionDeInicio
end if 


if C.FechaConfirmacionDeFin = ''
    C.FechaFinComputable = C.FechaDeFin
else
    C.FechaFinComputable = C.FechaConfirmacionDeFin
end if 


C.TiempoExtra = F.Truncate(F.MinutesDifferenceBetweenDatesAndTimes(C.FechaInicioComputable,C.FechaFinComputable) - F.MinutesDifferenceBetweenDatesAndTimes(C.FechaDeInicio,C.FechaDeFin))




F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.EvaluarEnAgenda.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaVehiculoDeTransporte.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.TiempoTacografo.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.DistanciaEnKilometros.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeInicio.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeFin.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaConfirmacionDeFin.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaConfirmacionDeInicio.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaOrdenDeTransporteDeRegreso.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.BotonRecalcularFFin.ID,'No disponible en Simbólicos.',C.Simbolico)
F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.BotonRecalcularFInicio.ID,'No disponible en Simbólicos.',C.Simbolico)



F.CampoBloqueadoMotivo(S.Fields.OrdenesDeTransportesDeRecursos.EvaluarEnAgenda.ID,'No disponible en cancelados.',C.Cancelado)


if C.Simbolico

    @ Transportado
    C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'b3bd6959-ed65-4c17-bd0a-b90fd35cf6ee') 



    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.EvaluarEnAgenda.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaVehiculoDeTransporte.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.TiempoTacografo.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.DistanciaEnKilometros.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeInicio.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeFin.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.FechaConfirmacionDeFin.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.FechaConfirmacionDeInicio.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.ReferenciaOrdenDeTransporteDeRegreso.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.BotonRecalcularFFin.ID)
    F.CampoVaciar(S.Fields.OrdenesDeTransportesDeRecursos.BotonRecalcularFInicio.ID)



else




    if C.Cancelado = 1

        C.EvaluarEnAgenda = 0
        C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'444419fb-9c36-4663-8509-2205e2ee065f') 

    elseif C.FechaConfirmacionDeInicio = '' and C.FechaConfirmacionDeFin = ''
        if C.EvaluarEnAgenda = 1 

            @ Programado
            C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'e8e432b3-bdd0-4f3c-8474-60c54278f225') 
        else

            @ Planificando
            C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'8fb5f3cc-3543-4daf-b20d-a98b7101c9ed') 
        end if

    elseif C.FechaConfirmacionDeInicio <> '' and C.FechaConfirmacionDeFin = ''
        @ Transportando
        C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'3fcf244a-b82b-4209-b655-3eae2864ff05') 

    elseif C.FechaConfirmacionDeInicio <> '' and C.FechaConfirmacionDeFin <> ''
        @ Transportado
        C.ReferenciaEstado = F.GetRowById(S.Sections.EstadosDeTransporte.ID,'b3bd6959-ed65-4c17-bd0a-b90fd35cf6ee') 
    end if
end if


F.CampoObligatorioMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeInicio.ID,'',C.EvaluarEnAgenda)
F.CampoObligatorioMotivo(S.Fields.OrdenesDeTransportesDeRecursos.FechaDeFin.ID,'',C.EvaluarEnAgenda)

Campo_Cambiado

if C.ReferenciaChofer.ReferenciaVehiculoHabitual <>''
    C.ReferenciaVehiculoDeTransporte = F.GetRowById(S.Sections.VehiculosDeLaEmpresa.ID,C.ReferenciaChofer.ReferenciaVehiculoHabitual)
end if

Campos utilizados: - Ordenes de Transportes de recursos > Chofer

Campo_Cambiado

if C.ReferenciaTipo = 'd4496986-3d4a-4b93-8aaf-13de9b2fc52b'
    if C.ReferenciaVehiculoDeTransporte <> ''
        if C.ReferenciaVehiculoDeTransporte.ReferenciaLocalizacionPrincipal <> ''
            C.ReferenciaLocalizacionDeDestino = C.ReferenciaVehiculoDeTransporte.ReferenciaLocalizacionPrincipal 
        end if
    end if
end if

Campos utilizados: - Ordenes de Transportes de recursos > Vehículo de transporte - Ordenes de Transportes de recursos > Tipo

Formulario_Iniciado_AgregarNuevo

C.ReferenciaTipo = C.empresa.ReferenciaTipoDeTransportePredeterminado 



IF C.ReferenciaAlquiler <> ''

    if C.AlquilerEsEntrega 

        C.ReferenciaLocalizacionDeOrigen = C.ReferenciaAlquiler.ReferenciaRecurso.ReferenciaLocalizacionActual 
        C.ReferenciaLocalizacionDeDestino = C.ReferenciaAlquiler.ReferenciaLugarDeEntrega 
        C.FechaDeFin = C.ReferenciaAlquiler.FechaDeEntrega 

        C.ReferenciaChofer = C.ReferenciaAlquiler.ReferenciaChoferDeEntrega 
        C.ReferenciaVehiculoDeTransporte = C.ReferenciaAlquiler.ReferenciaVehiculoEntrega 


    else

        C.ReferenciaLocalizacionDeOrigen = C.ReferenciaAlquiler.ReferenciaLugarDeRecogida 
        C.FechaDeInicio = C.ReferenciaAlquiler.FechaDeRecogida 
        C.ReferenciaChofer = C.ReferenciaAlquiler.ReferenciaChoferDeRecogida 
        C.ReferenciaVehiculoDeTransporte = C.ReferenciaAlquiler.ReferenciaVehiculoRecogida 

    end if



    IF C.ReferenciaAlquiler.ReferenciaRecurso <> ''
        F.AgregarElemento_Iniciar(S.Sections.OrdenesDeTransportesDeRecursosLista.ID)
        F.AgregarElemento_Valor(S.Fields.OrdenesDeTransportesDeRecursosLista.ReferenciaRecurso.ID,C.ReferenciaAlquiler.ReferenciaRecurso)
        F.AgregarElemento_Finalizar()
    end if

else




END IF

Campo_PreAgregarRelacion

F.CopiarAgregarRelacion(S.Fields.EntidadesBase.EsChofer.ID,'1')

Campos utilizados: - Ordenes de Transportes de recursos > Chofer


← Volver al índice