Пример #1
0
function CreateAnticipoConComprobacion3_2Cecos($bu, $depto1, $deptoPorcentaje1, $depto2, $deptoPorcentaje2, $usuario, $fecha, $concepto1, $subtotal1, $iva1, $tasa1, $concepto2, $subtotal2, $iva2, $tasa2, $concepto3, $subtotal3, $iva3, $tasa3)
{
    $anticipo = new Anticipo();
    $anticipo->TRAMITE_ID = getNextTramiteID();
    $anticipo->BUSINESS_UNIT = $bu;
    $anticipo->ID_DEPTO = $depto1;
    $anticipo->ID_USUARIO = $usuario['vendor'];
    $anticipo->ID_PRODUCTO = $usuario['producto'];
    $anticipo->ID_VENDOR = $usuario['vendor'];
    $anticipo->FECHA = $fecha;
    $anticipo->MONTO = $subtotal1 + $iva1 + $subtotal2 + $iva2 + $subtotal3 + $iva3;
    // depto1
    $comprobacion1 = new Comprobacion();
    $comprobacion1->TRAMITE_ID = getNextTramiteID();
    $comprobacion1->ID_ANTICIPO_RELACIONADO = $anticipo->TRAMITE_ID;
    $comprobacion1->BUSINESS_UNIT = $bu;
    $comprobacion1->ID_DEPTO = $depto1;
    $comprobacion1->ID_USUARIO = $usuario['vendor'];
    $comprobacion1->ID_PRODUCTO = $usuario['producto'];
    $comprobacion1->ID_VENDOR = $usuario['vendor'];
    $comprobacion1->FECHA = $fecha;
    $comprobacion1->AgregaLineaDeConcepto($concepto1['nombre'], $concepto1['cuenta'], round($subtotal1 * $deptoPorcentaje1, 2), round($iva1 * $deptoPorcentaje1, 2), round($tasa1 * $deptoPorcentaje1, 2));
    $comprobacion1->AgregaLineaDeConcepto($concepto2['nombre'], $concepto2['cuenta'], round($subtotal2 * $deptoPorcentaje1, 2), round($iva2 * $deptoPorcentaje1, 2), round($tasa2 * $deptoPorcentaje1, 2));
    $comprobacion1->AgregaLineaDeConcepto($concepto3['nombre'], $concepto3['cuenta'], round($subtotal3 * $deptoPorcentaje1, 2), round($iva3 * $deptoPorcentaje1, 2), round($tasa3 * $deptoPorcentaje1, 2));
    // depto2
    $comprobacion2 = new Comprobacion();
    $comprobacion2->TRAMITE_ID = getNextTramiteID();
    $comprobacion2->ID_ANTICIPO_RELACIONADO = $anticipo->TRAMITE_ID;
    $comprobacion2->BUSINESS_UNIT = $bu;
    $comprobacion2->ID_DEPTO = $depto2;
    $comprobacion2->ID_USUARIO = $usuario['vendor'];
    $comprobacion2->ID_PRODUCTO = $usuario['producto'];
    $comprobacion2->ID_VENDOR = $usuario['vendor'];
    $comprobacion2->FECHA = $fecha;
    $comprobacion2->AgregaLineaDeConcepto($concepto1['nombre'], $concepto1['cuenta'], round($subtotal1 * $deptoPorcentaje2, 2), round($iva1 * $deptoPorcentaje2, 2), round($tasa1 * $deptoPorcentaje2, 2));
    $comprobacion2->AgregaLineaDeConcepto($concepto2['nombre'], $concepto2['cuenta'], round($subtotal2 * $deptoPorcentaje2, 2), round($iva2 * $deptoPorcentaje2, 2), round($tasa2 * $deptoPorcentaje2, 2));
    $comprobacion2->AgregaLineaDeConcepto($concepto3['nombre'], $concepto3['cuenta'], round($subtotal3 * $deptoPorcentaje2, 2), round($iva3 * $deptoPorcentaje2, 2), round($tasa3 * $deptoPorcentaje2, 2));
    $conn = new ConexionERP();
    $conn->Conectar();
    error_log('');
    error_log('// --------- ANTICIPO');
    $conn->Registra_Anticipo($anticipo);
    error_log('// --------- COMPROBACION 1');
    $conn->Registra_Comprobacion($comprobacion1);
    error_log('// --------- COMPROBACION 2');
    $conn->Registra_Comprobacion($comprobacion2);
    $conn->Desconectar();
}
Пример #2
0
function GuardaAnticipos($valida = false)
{
        #Leer todas los anticipos sencillos cuyo STATUS_ERP = 1
        $VConn = new conexion();

        $VSql = "SELECT
                    *
                 FROM
                     solicitud_viaje
                         inner join tramites on (t_id = sv_tramite)
                         inner join usuario on (t_iniciador = u_id)
                         inner join empresas on (u_empresa = e_id)
                         inner join cat_cecos on (cc_id = sv_ceco_paga)
                 WHERE
                     sv_status_erp = 1";

        $VRes = $VConn->consultar($VSql);
        $Filas = mysql_num_rows($VRes);
        $Datos = mysql_fetch_assoc($VRes);
        
        #Por cada anticipo se guarda en el ERP
        $conn = new ConexionERP();
        $conn->Conectar();

        for($i=0; $i<$Filas; $i++)
        {
            $SOLICITUD_VIAJE = mysql_result($VRes,$i,"sv_id");;
            #leer los datos por cada fila que saque el query e insertar una fila por cada registro...
            $TRAMITE_ID = mysql_result($VRes,$i,"t_id");;
            $CVE_EMPRESA = mysql_result($VRes,$i,"e_codigo");
            $TOTAL = mysql_result($VRes,$i,"sv_anticipo");
            $MONEDA = mysql_result($VRes,$i,"sv_divisa");      
            $TASA = mysql_result($VRes,$i,"sv_tasa");      
            $CentroCosto = mysql_result($VRes,$i,"cc_centrocostos");
            $FechaAutorizacion = mysql_result($VRes,$i,"t_fecha_cierre");
            $IdUsuario = mysql_result($VRes,$i,"t_iniciador");
            $ID_PRODUCTO = mysql_result($VRes,$i,"u_producto");
            $ID_VENDOR = mysql_result($VRes,$i,"u_proveedor");

            $TRAMITE_ID = getTramiteID($TRAMITE_ID);

            #asignar datos a las variables del anticipo
            $Anticipo = new Anticipo();
            $Anticipo->TRAMITE_ID = $TRAMITE_ID;
            $Anticipo->ID_VENDOR = $ID_VENDOR;
            $Anticipo->BUSINESS_UNIT = $CVE_EMPRESA;
            $Anticipo->ID_DEPTO = $CentroCosto;
            $Anticipo->ID_USUARIO = $IdUsuario;
            $Anticipo->ID_PRODUCTO = $ID_PRODUCTO;
            $Anticipo->FECHA = $FechaAutorizacion;            
            $Anticipo->MONTO = $TOTAL;
            $Anticipo->MONEDA = $MONEDA;
            $Anticipo->TASA = $TASA;

            if($valida){
                global $VALIDACIONES;
                $VALIDACIONES = $VALIDACIONES . "Anticipo: $TRAMITE_ID\n";
                $Anticipo->Valida();
                $VALIDACIONES = $VALIDACIONES . "------------------------------\n";
                
            } else {

                #Guardar el anticipo
                $conn->Registra_Anticipo($Anticipo);
                
                #Modificar el status_erp del tramite a enviado a ERP ($ESTATUS_ERP_ENVIADO = 2)
                $VUpdt = "UPDATE solicitud_viaje SET sv_status_erp  = 2 WHERE sv_id = $SOLICITUD_VIAJE";
                $VExecute = $VConn->insertar($VUpdt);
                
            }
        }
        $conn->Desconectar();
}