function p_before($codigo)
 {
     global $CN;
     if (get("metodo") == "FFichatecnicaDet") {
         $CodigoFicha = get('CodigoFicha');
         $SqlDetFicha = "SELECT Cantidad,Producto FROM defichatecnica WHERE Codigo={$codigo};";
         $row = fetch($SqlDetFicha);
         $Cantidad = $row['Cantidad'];
         $Producto = $row['Producto'];
         $SqlProducto = "SELECT Codigo,Precio FROM maproducto WHERE Codigo={$row['Producto']} ;";
         $row = fetch($SqlProducto);
         $Precio = $row['Precio'];
         $Importe = $Cantidad * $Precio;
         $SqlUpdate = "Update defichatecnica SET PrecioUnitario={$Precio},Importe={$Importe} WHERE Codigo={$codigo} ";
         xSQL2($SqlUpdate, $CN);
         $SqlInsert = "INSERT INTO maalmacen(CantidadSalida,Producto,Usuario,TipoIngreso) VALUES ({$Cantidad},{$Producto},'admin',2) ";
         xSQL2($SqlInsert, $CN);
         Ficha('CrearDetalle', $CodigoFicha, '');
     }
 }
 function p_before($codigo)
 {
     global $ConexionEmpresa;
     $sql = "UPDATE sys_usuarios SET UMiembro = " . $_SESSION['UMiembro']['int'] . " WHERE Codigo=" . $codigo;
     xSQL2($sql, $ConexionEmpresa);
 }
function InsertarCuenta($codi)
{
    global $ConxGestionDC, $ConexSisEmp;
    $sql = "SELECT MAX(NroSuscripcion) as Nro FROM ct_suscripcion";
    $rgt = rGT($ConexSisEmp, $sql);
    $Nro = 0;
    if ($rgt['Nro'] == "") {
        $Nro = 1;
    } else {
        $Nro = intval($rgt['Nro']['string']) + 1;
    }
    $sql = "INSERT INTO ct_suscripcion(Codigo,CtaSuscripcion,FHCreacion,IpPublica,IpPrivada,NroSuscripcion) VALUES(" . " " . $Nro . ",'" . $Nro . "','" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "'," . $Nro . ")";
    $codSuscripcion = $Nro;
    xSQL2($sql, $ConexSisEmp);
    $sql = "INSERT INTO ct_umiembro(CtaSuscripcion,FHCreacion,IpPublica,IpPrivada,Suscriptor,Suscripcion,Cargo) VALUES (" . "'" . $codi . "','" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "','" . post('Email') . "'," . $Nro . "," . post('Cargo') . ")";
    xSQL2($sql, $ConexSisEmp);
    $codMiembro = mysql_insert_id($ConexSisEmp);
    $sql = "INSERT INTO sys_usuarios(Usuario,Nombres,Apellidos,Contrasena,Estado,email,FechaRegistro,CtaSuscripcion,UMiembro) VALUES (" . "'" . post('Usuario') . "','" . post('Nombres') . "','" . post('ApellidoP') . " " . post('ApellidoM') . "'," . "'" . post('Contrasena') . "',1,'" . post('Email') . "','" . date('y-m-d h:m:s') . "','" . $codSuscripcion . "','" . $codMiembro . "')";
    xSQL2($sql, $ConxGestionDC);
    $sql = "SELECT Codigo FROM ct_entidad WHERE Ruc=" . post('Empresa') . "";
    $res = mysql_query($sql, $ConexSisEmp);
    $ce = mysql_num_rows($res);
    $codEnt = 0;
    $rucEnt = "";
    $razEnt = "";
    $dirEnt = "";
    if ($ce == 0) {
        #$emp = BuscarRuc(post('Empresa'));
        $sql = "SELECT Empresa,RazonSocial FROM ct_solicitud WHERE Empresa=" . post('Empresa') . ";";
        $emp = rGT($ConexSisEmp, $sql);
        $sql2 = "INSERT INTO ct_entidad(CtaSuscripcion,UMiembro,FHCreacion,IpPublica,IpPrivada,Ruc,RazonSocial,DireccionFiscal)values(" . "'" . $codSuscripcion . "','" . $codMiembro . "','" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "'," . $emp['Empresa'] . ",'" . $emp['RazonSocial'] . "','')";
        xSQL2($sql2, $ConexSisEmp);
        $codEnt = mysql_insert_id();
        $rucEnt = $emp['Empresa'];
        $razEnt = $emp['RazonSocial'];
        #$dirEnt  = $emp[2];
    } else {
        $xSql = "SELECT codigo,ruc,razonsocial,direccionfiscal FROM ct_entidad where RUC='" . post('Empresa') . "'";
        $rg = rGT($ConexSisEmp, $xSql);
        $codEnt = $rg['codigo'];
        $rucEnt = $rg['ruc'];
        $razEnt = $rg['razonsocial'];
        $dirEnt = $rg['direccionfiscal'];
    }
    $sql = "INSERT INTO ct_suscriptores(Codigo,CtaSuscripcion,UMiembro,FHCreacion,IpPublica,IpPrivada,Nombre,ApellidoP,ApellidoM,Entidad,Email,Telefono) values (" . "'" . post('Email') . "','" . $codSuscripcion . "','" . $codMiembro . "','" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "','" . post('Nombres') . "'," . "'" . post('ApellidoP') . "','" . post('ApellidoM') . "'," . $codEnt . ",'" . post('Email') . "'," . post('Telefono') . ")";
    xSQL2($sql, $ConexSisEmp);
    $codSuscriptor = mysql_insert_id();
    $sql = "INSERT INTO ct_acreditacion(CtaSuscripcion,UMiembro,FHCreacion,IpPublica,IpPrivada,Solicitud,FechaAprovacion,Estado) VALUES (" . "'" . $codSuscripcion . "'," . $codMiembro . ",'" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "'," . $codi . ",'" . date('y-m-d h:m:s') . "',0)";
    xSQL2($sql, $ConexSisEmp);
    $codAcredi = mysql_insert_id();
    $sql = "INSERT INTO ct_empresasuscripcion(CtaSuscripcion,UMiembro,FHCreacion,IpPublica,IpPrivada,Entidad,Suscripcion,RazonSocial,Predeterminado) VALUES(" . "'" . $codSuscripcion . "'," . $codMiembro . ",'" . date('y-m-d h:m:s') . "','" . getRealIP() . "','" . getRealIP() . "','" . $codEnt . "','" . $codSuscripcion . "','" . $razEnt . "',1)";
    xSQL2($sql, $ConexSisEmp);
    $sql = "UPDATE ct_suscripcion SET UMiembro = '" . $codMiembro . "',Acreditacion='" . $codAcredi . "' where codigo='" . $codSuscripcion . "'";
    xSQL2($sql, $ConexSisEmp);
    $sql = "UPDATE ct_umiembro SET UMiembro = '" . $codMiembro . "',Entidad='" . $codEnt . "' where codigo='" . $codMiembro . "'";
    xSQL2($sql, $ConexSisEmp);
    return $codSuscripcion;
}
function MenuPerfil($parm)
{
    global $vConex, $enlace, $cnOwl;
    switch ($parm) {
        case "Listado":
            $btn = "Crear ]" . $enlace . "?MenuPerfil=Form]panelB-R2}";
            $btn .= "<div class='actualizar'></div>]" . $enlace . "?MenuPerfil=Listado]panelB-R}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("Listado <p>MENÚ EMPRESA</p>", $btn, "150px", "TituloA");
            $sql = 'SELECT Codigo, Nombre, Url,Estado, Codigo AS CodigoAjax FROM menu_empresa ORDER BY Codigo ASC ';
            $clase = 'reporteA';
            $enlaceCod = 'codigo_menu_empresa';
            $url = $enlace . "?MenuPerfil=menuDetalle";
            $panel = 'panelB-R2';
            $reporte = ListR2($titulo, $sql, $vConex, $clase, '', $url, $enlaceCod, $panel, 'sys_tipo_ouput', '');
            $divFloat = panelFloat($form, "panel-FloatB", $style);
            $s = layoutLSB($divFloat . $subMenu, $reporte, "panelB-R2");
            break;
        case "Form":
            $uRLForm = "Crear]" . $enlace . "?metodo=menu_empresa&transaccion=INSERT]panelB-R]F]}";
            $titulo = "Crear Menú";
            $form = c_form($titulo, $vConex, "menu_empresa", "CuadroA", $path, $uRLForm, "", $tSelectD);
            $s = PanelInferior($FBusqueda . $form, "panel_edit_menu", '370px');
            WE($s);
            break;
        case "editaReg":
            $codigo = get("codigo_menu_empresa");
            $titulo = "Editar Menú";
            $uRLForm = "Actualizar]" . $enlace . "?metodo=menu_empresa&transaccion=UPDATE&codigo=" . $codigo . "]panelB-R]F]}";
            $uRLForm .= "Eliminar]" . $enlace . "?metodo=menu_empresa&transaccion=DELETE&codigo=" . $codigo . "]panelB-R]]}";
            $form = c_form($titulo, $vConex, "menu_empresa", "CuadroA", $path, $uRLForm, $codigo, $tSelectD);
            $form = "<div style='width:400px;'>" . $form . "</div>";
            $s = PanelInferior($form, "panel_edit_menu", '320px');
            break;
        case "Detalle":
            $btn .= "Atrás]" . $enlace . "?MenuPerfil=Listado]panelB-R}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("Listado <p>MENÚ EMPRESA</p>", $btn, "100px", "TituloA");
            $sql = 'SELECT Codigo, Nombre, Url,Estado, Codigo AS CodigoAjax FROM menu_empresa ORDER BY Codigo ASC ';
            $clase = 'reporteA';
            $enlaceCod = 'codigo_menu_empresa';
            $url = $enlace . "?MenuPerfil=menuDetalle";
            $panel = 'panelB-R2';
            $reporte = ListR2($titulo, $sql, $vConex, $clase, '', $url, $enlaceCod, $panel, 'sys_tipo_ouput', '');
            $divFloat = panelFloat($form, "panel-FloatB", $style);
            $s = layoutLSB($divFloat . $subMenu, $reporte, "panelB-R2");
            break;
        case "menuDetalle":
            $cod = get('codigo_menu_empresa');
            $btn = "Crear ]" . $enlace . "?MenuPerfil=FormDetalle&CodSubMenu=" . $cod . "]panelB-R2}";
            $btn .= "Editar ]" . $enlace . "?MenuPerfil=editaReg&codigo_menu_empresa=" . $cod . "]panelB-R2}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("Detalle <p>MENÚ</p>", $btn, "150px", "TituloA");
            $sql = "SELECT Codigo, Nombre, TipoMenu, Url,Orden,Estado, Codigo AS CodigoAjax\n                                    FROM menu_empresa_det\n                                    WHERE Menu = '{$cod}'\n                                    ORDER BY Codigo ASC ";
            $clase = 'reporteA';
            $enlaceCod = 'codigo_menu_empresa_det';
            $url = $enlace . "?MenuPerfil=editaRegDet";
            $panel = 'PanelInter';
            $reporte = ListR2($titulo, $sql, $vConex, $clase, '', $url, $enlaceCod, $panel, 'sys_tipo_ouput', '');
            $divFloat = panelFloat($form, "panel-FloatB", $style);
            $s = layoutLSB2($divFloat . $subMenu, $reporte, "panelB-R2");
            break;
        case "FormDetalle":
            $codMenu = get('CodSubMenu');
            $uRLForm = "Crear]" . $enlace . "?metodo=menu_empresa_det&transaccion=INSERT&Menu=" . $codMenu . "]panelB-R]F]}";
            $titulo = "Crear Sub-Menú";
            $form = c_form($titulo, $vConex, "menu_empresa_det", "CuadroA", $path, $uRLForm, "", $tSelectD);
            $s = PanelInferior($FBusqueda . $form, "panel_edit_menu", '370px');
            WE($s);
            break;
        case "editaRegDet":
            $codigo = get("codigo_menu_empresa_det");
            $titulo = "Editar Submenú";
            $uRLForm = "Actualizar]" . $enlace . "?metodo=menu_empresa_det&transaccion=UPDATE&codigo=" . $codigo . "]panelB-R]F]}";
            $uRLForm .= "Eliminar]" . $enlace . "?metodo=menu_empresa_det&transaccion=DELETE&codigo=" . $codigo . "]panelB-R]]}";
            $form = c_form($titulo, $vConex, "menu_empresa_det", "CuadroA", $path, $uRLForm, $codigo, $tSelectD);
            $form = "<div style='width:400px;'>" . $form . "</div>";
            $s = PanelInferior($form, "panel_edit_menu", '320px');
            break;
        case "updtaePerflMaster":
            $btn = "Actualizar ]" . $enlace . "?MenuPerfil=actMaster]panelB-R}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("Actualizar <p>MASTER</p>", $btn, "150px", "TituloA");
            $sql = "SELECT p.Codigo, m.Nombre,d.TipoMenu,p.Estado,p.Perfil, p.Codigo AS CodigoAjax\n                                    FROM menu_empresa as m\n                                    LEFT JOIN menu_empresa_perfil as p  ON m.Codigo = p.Menu\n                                    LEFT JOIN menu_empresa_det as d ON p.MenuDetalle = d.Codigo WHERE Perfil = '1'\n                                    Group by p.Codigo  ORDER BY p.Menu, p.MenuDetalle ASC";
            $clase = 'reporteA';
            $enlaceCod = 'codigo_menu_empresa';
            $url = $enlace . "?MenuPerfil=menuDetalle";
            $panel = 'panelB-R';
            $reporte = ListR2($titulo, $sql, $vConex, $clase, '', $url, $enlaceCod, $panel, '', '');
            $s = 'Aquí Automáticamente el usuario "Master" de cada empresa, podrá tener acceso a todos los menús y submenus y tambien se actualizará si se ingreso nuevos menús y submenus';
            $s .= layoutLSB($divFloat . $subMenu, $reporte, "panelB-R2");
            break;
        case "actMaster":
            $perfil = $codigo;
            $n_s = "SELECT PaginaWeb FROM empresa";
            $resu = mysql_query($n_s, $vConex);
            while ($reg = mysql_fetch_array($resu)) {
                $s .= $reg["PaginaWeb"];
                $sql = "SELECT Codigo, Menu FROM menu_empresa_det ";
                $consulta = mysql_query($sql, $vConex);
                while ($r = mysql_fetch_array($consulta)) {
                    $sql = "SELECT Codigo\n                                                            FROM menu_empresa_perfil\n                                                            WHERE Menu ='" . $r["Menu"] . "' AND MenuDetalle = '" . $r["Codigo"] . "' AND Perfil ='1' AND Entidad = '" . $reg["PaginaWeb"] . "' ";
                    $rg = fetch($sql);
                    $codigo = $rg["Codigo"];
                    if ($codigo) {
                        $s .= 'ya ingreso<br>';
                    } else {
                        $sql = 'INSERT INTO menu_empresa_perfil (Menu,MenuDetalle,Estado,Perfil,Entidad)
                                                                    VALUES ("' . $r["Menu"] . '","' . $r["Codigo"] . '","Activo","1","' . $reg["PaginaWeb"] . '")';
                        xSQL($sql, $vConex);
                        $s .= 'deberia ingresa';
                    }
                }
            }
            break;
        case "PerfilSys":
            $subMenu = tituloBtnPn("<span>ACTUALIZA  PERFILES</span><p>Actualiza  en base en la plantilla</p><div class='bicel'></div>", $btn, "200px", "TituloA");
            $Q_Programas = "SELECT DISTINCT Entidad AS 'Nombre de la Empresa',\n                            Entidad AS CodigoAjax\n                            FROM  menu_empresa_perfil";
            $Url_Raiz_Link = "{$enlace}?MenuPerfil=PerfilesEmpresa";
            $Url_Add_Link = array("CodigoAjax" => "CodMEP");
            $Panel_Destino = 'panelB-R';
            $tablaReporte = ListR("", $Q_Programas, $cnOwl, 'reporteA', 'd', $Url_Raiz_Link, $Url_Add_Link, $Panel_Destino);
            $s = PanelUnico($subMenu, $tablaReporte, 'panelB-R2', '600px');
            break;
        case "PerfilDelete":
            $btn = "Eliminar ]" . $enlace . "?MenuPerfil=PerfilDeleteProcess]panelB-R}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("<span>ELIMINACION</span><p>PERFILES FALLIDOS</p><div class='bicel'></div>", $btn, "200px", "TituloA");
            $s = PanelUnico($subMenu, $tablaReporte, 'panelB-R2', '600px');
            break;
        case "PerfilDeleteProcess":
            $sql = "DELETE FROM menu_empresa_perfil WHERE Entidad = '' ";
            xSQL($sql, $vConex);
            W(MsgE("Eliminación Exitosa."));
            MenuPerfil('PerfilDelete');
            break;
        case "PerfilSysView":
            //Listar todos los perfiles
            $sql = "SELECT Descripcion,\n                    Codigo AS CodigoAjax \n                    FROM usuario_perfil\n                    WHERE Usuario = 'Sys'";
            $Url_Raiz_Link = "{$enlace}?MenuPerfil=detallePerfilView";
            $Url_Add_Link = array("CodigoAjax" => "perfil_cod");
            $Panel_Destino = 'panelB-R';
            $reporte = ListR("", $sql, $cnOwl, 'reporteA', 'd', $Url_Raiz_Link, $Url_Add_Link, $Panel_Destino);
            $subMenu = tituloBtnPn("<span>PERFILES SYS</span><p>Plantilla master de menu para las empresas</p><div class='bicel'></div>", null, "auto", "TituloA");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "PerfilesEmpresa":
            $CodMEP = get("CodMEP");
            //Listar todos los perfiles de la empresa que esten en menu_empresa_perfil
            $Q_A = "SELECT DISTINCT Perfil \n                    FROM menu_empresa_perfil\n                    WHERE  Entidad = '{$CodMEP}'";
            $sql = "SELECT\n  UP.Descripcion,\n                (\n                    CASE\n                        WHEN MED.Perfil <> ''  THEN '<div style=color:green >Definido</div>' ELSE 'Pendiente'\n                    END\n                ) AS Estado,\n  UP.Codigo  AS CodigoAjax\n                FROM usuario_perfil AS UP\n                LEFT JOIN ({$Q_A}) AS MED ON MED.Perfil = UP.Codigo\n                WHERE UP.Usuario = 'Sys'\n                GROUP BY UP.Codigo";
            $Url_Raiz_Link = "{$enlace}?MenuPerfil=detallePerfilViewEmprPerfil&CodMEP={$CodMEP}";
            $Url_Add_Link = array("CodigoAjax" => "perfil_cod");
            $Panel_Destino = 'panelB-R';
            $reporte = ListR("", $sql, $cnOwl, 'reporteA', 'd,d', $Url_Raiz_Link, $Url_Add_Link, $Panel_Destino);
            $btn = "<i class=' icon-chevron-left'></i> Atrás]{$enlace}?MenuPerfil=PerfilSys]panelB-R}";
            $btn = Botones($btn, 'botones1');
            $subMenu = tituloBtnPn("<span>ACTUALIZA  EN BASE EN LA PLANTILLA</span><p>Perfiles de empresa - {$CodMEP}</p><div class='bicel'></div>", $btn, "auto", "TituloA");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "detallePerfilView":
            $codigo = get("perfil_cod");
            $Q_Descripcion_perfil = "SELECT UP.Descripcion AS PerfilDesc\n                    FROM usuario_perfil AS UP\n                    WHERE UP.Codigo = {$codigo}";
            $PerfilDesc = (string) fetchOne($Q_Descripcion_perfil, $vConex)->PerfilDesc;
            $btn = "<i class=' icon-chevron-left'></i> Atrás]{$enlace}?MenuPerfil=PerfilSysView]panelB-R}";
            $btn .= "<i class='icon-ok-circle'></i> Activar]{$enlace}?MenuPerfil=OnOffItemItemPerfil&status=on&perfil_cod={$codigo}]panelB-R]CHECK}";
            $btn .= "<i class='icon-minus-sign'></i> Desactivar]{$enlace}?MenuPerfil=OnOffItemItemPerfil&status=off&perfil_cod={$codigo}]panelB-R]CHECK}";
            $btn .= "<i class='icon-refresh'></i> Actualizar / Definir]{$enlace}?MenuPerfil=PActualizaItemPerfil&perfil_cod={$codigo}]panelB-R]CHECK}";
            $btn = Botones($btn, 'botones1', "menu_layout");
            $subMenu = tituloBtnPn("<span>ACTUALIZAR ITEMS de SYS</span><p>PERFIL {$PerfilDesc}</p><div class='bicel'></div>", $btn, "auto", "TituloA");
            $sql = "SELECT \n                ME.Codigo AS CodigoAjax,\n                ME.Nombre,\n                IF(ISNULL(TAB1.Menu),'<div style=color:red>No hay ningún item definido</div>','<div style=color:green>Hay items definidos</div>') AS Estado\n                FROM menu_empresa AS ME\n                LEFT JOIN (\n                    SELECT DISTINCT MEP.Menu \n                    FROM menu_empresa_perfil AS MEP\n                    WHERE MEP.Entidad = 'Sys'\n                    AND MEP.Perfil = {$codigo}\n                ) AS TAB1 ON ME.Codigo = TAB1.Menu\n                ORDER BY ME.Codigo ASC;";
            $Url_Raiz_Link = "{$enlace}?MenuPerfil=detalle_submenu&perfil_cod={$codigo}";
            $enlaceCod = "CodMenu";
            $Panel_Destino = 'panelB-R';
            $reporte = ListR2("", $sql, $cnOwl, 'reporteA', "", $Url_Raiz_Link, $enlaceCod, $Panel_Destino, "menu_layout", "checks");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "detallePerfilViewEmprPerfil":
            $codigo = get("perfil_cod");
            $CodMEP = get("CodMEP");
            $Q_Descripcion_perfil = "SELECT UP.Descripcion AS PerfilDesc\n                    FROM usuario_perfil AS UP\n                    WHERE UP.Codigo = {$codigo}";
            $PerfilDesc = (string) fetchOne($Q_Descripcion_perfil, $vConex)->PerfilDesc;
            $btn = "<i class=' icon-chevron-left'></i> Atrás]{$enlace}?MenuPerfil=PerfilesEmpresa&CodMEP={$CodMEP}]panelB-R}";
            $btn .= "<i class='icon-ok-circle'></i> Activar]{$enlace}?MenuPerfil=OnOffItemItemPerfil_empresa&status=on&perfil_cod={$codigo}&CodMEP={$CodMEP}]panelB-R]CHECK}";
            $btn .= "<i class='icon-minus-sign'></i> Desactivar]{$enlace}?MenuPerfil=OnOffItemItemPerfil_empresa&status=off&perfil_cod={$codigo}&CodMEP={$CodMEP}]panelB-R]CHECK}";
            $btn .= "<i class=' icon-refresh'></i> Actualizar / Definir]{$enlace}?MenuPerfil=PActualizaItemPerfilEmpresa&perfil_cod={$codigo}&CodMEP={$CodMEP}]panelB-R]CHECK}";
            $btn = Botones($btn, 'botones1', "menu_layout");
            $subMenu = tituloBtnPn("<span>ACTUALIZAR ITEMS SEGUN CONFIGURACIÓN Sys</span><p>PERFIL {$PerfilDesc}</p><div class='bicel'></div>", $btn, "auto", "TituloA");
            $sql = "SELECT \n                ME.Codigo AS CodigoAjax,\n                ME.Nombre,\n                IF(ISNULL(TAB1.Menu),'<div style=color:red>No hay ningún item definido</div>','<div style=color:green>Hay items definidos</div>') AS Estado\n                FROM menu_empresa AS ME\n                LEFT JOIN (\n                    SELECT DISTINCT MEP.Menu \n                    FROM menu_empresa_perfil AS MEP\n                    WHERE MEP.Entidad = '{$CodMEP}'\n                    AND MEP.Perfil = {$codigo}\n                ) AS TAB1 ON ME.Codigo = TAB1.Menu\n                ORDER BY ME.Codigo ASC;";
            $Url_Raiz_Link = "{$enlace}?MenuPerfil=detalle_submenu_empresa&CodMEP={$CodMEP}&perfil_cod={$codigo}";
            $enlaceCod = "CodMenu";
            $Panel_Destino = 'panelB-R';
            $reporte = ListR2("", $sql, $cnOwl, 'reporteA', "", $Url_Raiz_Link, $enlaceCod, $Panel_Destino, "menu_layout", "checks");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "detalle_submenu":
            $codigo = (int) get("perfil_cod");
            $CodMenu = (int) get("CodMenu");
            $Q_Descripcion_perfil = "SELECT UP.Descripcion AS PerfilDesc\n                    FROM usuario_perfil AS UP\n                    WHERE UP.Codigo = {$codigo}";
            $PerfilDesc = (string) fetchOne($Q_Descripcion_perfil, $vConex)->PerfilDesc;
            $Q_DescMenu = "SELECT Nombre \n                FROM menu_empresa \n                WHERE Codigo = {$CodMenu}";
            $DescMenu = (string) fetchOne($Q_DescMenu, $vConex)->Nombre;
            $btn = "<i class=' icon-chevron-left'></i> Atrás]{$enlace}?MenuPerfil=detallePerfilView&perfil_cod={$codigo}]panelB-R}";
            $btn .= "<i class='icon-ok-circle'></i> Activar]{$enlace}?MenuPerfil=OnOffItemSubItemPerfil&status=on&perfil_cod={$codigo}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn .= "<i class='icon-minus-sign'></i> Desactivar]{$enlace}?MenuPerfil=OnOffItemSubItemPerfil&status=off&perfil_cod={$codigo}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn .= "<i class=' icon-refresh'></i> Actualizar / Definir]{$enlace}?MenuPerfil=PUpdateSubItem&perfil_cod={$codigo}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn = Botones($btn, 'botones1', "menu_layout");
            $subMenu = tituloBtnPn("<span>{$DescMenu} - Submenus de Sys</span><p>PERFIL {$PerfilDesc}</p><div class='bicel'></div>", $btn, "auto", "TituloA");
            $sql = "SELECT \n                MED.Codigo AS CodigoAjax,\n                MED.Nombre,\n                IF(ISNULL(TAB1.Estado),'<div style=color:red>No definido</div>',IF(TAB1.Estado='Activo','<div style=color:green><i class=icon-ok-sign></i> Activado</div>','<div style=color:grey><i class=icon-minus-sign></i> Desactivado</div>')) AS Estado\n                FROM menu_empresa_det AS MED\n                LEFT JOIN (\n                    SELECT DISTINCT MEP.MenuDetalle, MEP.Menu, MEP.Estado\n                    FROM menu_empresa_perfil AS MEP\n                    WHERE MEP.Entidad = 'Sys'\n                    AND MEP.Perfil = {$codigo}\n                    AND  MEP.Menu = {$CodMenu}\n                ) AS TAB1 ON MED.Codigo = TAB1.MenuDetalle\n                ORDER BY MED.Codigo ASC";
            $Url_Raiz_Link;
            $enlaceCod;
            $Panel_Destino;
            $reporte = ListR2("", $sql, $cnOwl, "reporteA", "", $Url_Raiz_Link, $enlaceCod, $Panel_Destino, "menu_layout", "checks");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "detalle_submenu_empresa":
            $codigo = (int) get("perfil_cod");
            $CodMEP = (string) get("CodMEP");
            $CodMenu = (int) get("CodMenu");
            $Q_Descripcion_perfil = "SELECT UP.Descripcion AS PerfilDesc\n                    FROM usuario_perfil AS UP\n                    WHERE UP.Codigo = {$codigo}";
            $PerfilDesc = (string) fetchOne($Q_Descripcion_perfil, $vConex)->PerfilDesc;
            $Q_DescMenu = "SELECT Nombre \n                FROM menu_empresa \n                WHERE Codigo = {$CodMenu}";
            $DescMenu = (string) fetchOne($Q_DescMenu, $vConex)->Nombre;
            $btn = "<i class=' icon-chevron-left'></i> Atrás]{$enlace}?MenuPerfil=detallePerfilViewEmprPerfil&CodMEP={$CodMEP}&perfil_cod={$codigo}]panelB-R}";
            $btn .= "<i class='icon-ok-circle'></i> Activar]{$enlace}?MenuPerfil=OnOffItemSubItemPerfil_empresa&status=on&perfil_cod={$codigo}&CodMEP={$CodMEP}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn .= "<i class='icon-minus-sign'></i> Desactivar]{$enlace}?MenuPerfil=OnOffItemSubItemPerfil_empresa&status=off&perfil_cod={$codigo}&CodMEP={$CodMEP}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn .= "<i class=' icon-refresh'></i> Actualizar / Definir]{$enlace}?MenuPerfil=PUpdateSubItem_empresa&perfil_cod={$codigo}&CodMEP={$CodMEP}&CodMenu={$CodMenu}]panelB-R]CHECK}";
            $btn = Botones($btn, 'botones1', "menu_layout");
            $subMenu = tituloBtnPn("<span>{$DescMenu} - Submenus </span><p>PERFIL {$PerfilDesc}</p><div class='bicel'></div>", $btn, "auto", "TituloA");
            $sql = "SELECT \n                MED.Codigo AS CodigoAjax,\n                MED.Nombre,\n                IF(ISNULL(TAB1.Estado),'<div style=color:red>No definido</div>',IF(TAB1.Estado='Activo','<div style=color:green><i class=icon-ok-sign></i> Activado</div>','<div style=color:grey><i class=icon-minus-sign></i> Desactivado</div>')) AS Estado\n                FROM menu_empresa_det AS MED\n                LEFT JOIN (\n                    SELECT DISTINCT MEP.MenuDetalle, MEP.Menu, MEP.Estado\n                    FROM menu_empresa_perfil AS MEP\n                    WHERE MEP.Entidad = '{$CodMEP}'\n                    AND MEP.Perfil = {$codigo}\n                    AND  MEP.Menu = {$CodMenu}\n                ) AS TAB1 ON MED.Codigo = TAB1.MenuDetalle\n                ORDER BY MED.Codigo ASC";
            $Url_Raiz_Link;
            $enlaceCod;
            $Panel_Destino;
            $reporte = ListR2("", $sql, $cnOwl, "reporteA", "", $Url_Raiz_Link, $enlaceCod, $Panel_Destino, "menu_layout", "checks");
            $s = PanelUnico($subMenu, $reporte, 'panelB-R2', '600px');
            break;
        case "OnOffItemItemPerfil":
            //Este proceso barre todo los submenus de un menu y los activa
            $perfil = (int) get("perfil_cod");
            $status = get("status");
            switch ($status) {
                case "on":
                    $Estado = "Activo";
                    break;
                case "off":
                    $Estado = "Inactivo";
                    break;
                default:
                    MenuPerfil("detallePerfilView");
                    break;
            }
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodMenu = post("ky");
            if (!$MxcodMenu) {
                W("Debes seleccionar un Módulo de menu para poder cambiar el estado a {$Estado} a los items...<br>");
                MenuPerfil("detallePerfilView");
            }
            $FILTER = implode(",", $MxcodMenu);
            $Q_UPDSubmenu = "UPDATE menu_empresa_perfil\n                    SET Estado = '{$Estado}'\n                    WHERE Menu IN({$FILTER})\n                    AND Perfil = {$perfil} \n                    AND Entidad = 'Sys'";
            xSQL2($Q_UPDSubmenu, $vConex);
            W("Se cambio el estado a {$Estado} a todos los items de el(los) menu(s)<br>");
            MenuPerfil("detallePerfilView");
            break;
        case "OnOffItemItemPerfil_empresa":
            //Este proceso barre todo los submenus de un menu y los activa
            $perfil = (int) get("perfil_cod");
            $CodMEP = (string) get("CodMEP");
            $status = get("status");
            switch ($status) {
                case "on":
                    $Estado = "Activo";
                    break;
                case "off":
                    $Estado = "Inactivo";
                    break;
                default:
                    MenuPerfil("detallePerfilViewEmprPerfil");
                    break;
            }
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodMenu = post("ky");
            if (!$MxcodMenu) {
                W("Debes seleccionar un Módulo de menu para poder cambiar el estado a {$Estado} a los items...<br>");
                MenuPerfil("detallePerfilViewEmprPerfil");
            }
            $FILTER = implode(",", $MxcodMenu);
            $Q_UPDSubmenu = "UPDATE menu_empresa_perfil\n                    SET Estado = '{$Estado}'\n                    WHERE Menu IN({$FILTER})\n                    AND Perfil = {$perfil} \n                    AND Entidad = '{$CodMEP}'";
            xSQL2($Q_UPDSubmenu, $vConex);
            W("Se cambio el estado a {$Estado} a todos los items de el(los) menu(s)<br>");
            MenuPerfil("detallePerfilViewEmprPerfil");
            break;
        case "OnOffItemSubItemPerfil":
            //Este proceso barre todo los submenus de un menu y los activa
            $perfil = (int) get("perfil_cod");
            $CodMenu = (int) get("CodMenu");
            $status = get("status");
            switch ($status) {
                case "on":
                    $Estado = "Activo";
                    break;
                case "off":
                    $Estado = "Inactivo";
                    break;
                default:
                    MenuPerfil("detalle_submenu");
                    break;
            }
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodSubMenu = post("ky");
            if (!$MxcodSubMenu) {
                W("Debes seleccionar un sub-menu para poder cambiar el estado a {$Estado}...<br>");
                MenuPerfil("detalle_submenu");
            }
            $FILTER = implode(",", $MxcodSubMenu);
            $Q_UPDSubmenu = "UPDATE menu_empresa_perfil\n                    SET Estado = '{$Estado}'\n                    WHERE Menu = {$CodMenu}\n                    AND MenuDetalle IN({$FILTER})\n                    AND Perfil = {$perfil} \n                    AND Entidad = 'Sys'";
            xSQL2($Q_UPDSubmenu, $vConex);
            W("Se cambio el estado a {$Estado} a el(los) submenu(s)<br>");
            MenuPerfil("detalle_submenu");
            break;
        case "OnOffItemSubItemPerfil_empresa":
            //Este proceso barre todo los submenus de un menu y los activa
            $perfil = (int) get("perfil_cod");
            $CodMenu = (int) get("CodMenu");
            $CodMEP = (string) get("CodMEP");
            $status = get("status");
            switch ($status) {
                case "on":
                    $Estado = "Activo";
                    break;
                case "off":
                    $Estado = "Inactivo";
                    break;
                default:
                    MenuPerfil("detalle_submenu_empresa");
                    break;
            }
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodSubMenu = post("ky");
            if (!$MxcodSubMenu) {
                W("Debes seleccionar un sub-menu para poder cambiar el estado a {$Estado}...<br>");
                MenuPerfil("detalle_submenu_empresa");
            }
            $FILTER = implode(",", $MxcodSubMenu);
            $Q_UPDSubmenu = "UPDATE menu_empresa_perfil\n                    SET Estado = '{$Estado}'\n                    WHERE Menu = {$CodMenu}\n                    AND MenuDetalle IN({$FILTER})\n                    AND Perfil = {$perfil} \n                    AND Entidad = '{$CodMEP}'";
            xSQL2($Q_UPDSubmenu, $vConex);
            W("Se cambio el estado a {$Estado} a el(los) submenu(s)<br>");
            MenuPerfil("detalle_submenu_empresa");
            break;
        case "PActualizaItemPerfil":
            //Este proceso barre todo los submenus de un menu
            //Luego valida si el submenu esta ligado al perfil en la tabla menu_empresa_perfil
            $perfil = (int) get("perfil_cod");
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodMenu = post("ky");
            if (!$MxcodMenu) {
                W("Debes seleccionar un Módulo de menu para poder actualizar los items...<br>");
                MenuPerfil("detallePerfilView");
            }
            $FILTER = implode(",", $MxcodMenu);
            $Q_Submenu = "SELECT Codigo,Menu \n                    FROM menu_empresa_det\n                    WHERE Menu IN({$FILTER})";
            $MxSubMenu = fetchAll($Q_Submenu, $vConex);
            if (!$MxSubMenu) {
                W("No se encontro items para actualizar");
            }
            foreach ($MxSubMenu as $SubMenu) {
                $codSubmenu = (int) $SubMenu->Codigo;
                $codMenu = (int) $SubMenu->Menu;
                $Q_det_submenu = "SELECT Codigo\n                        FROM menu_empresa_perfil\n                        WHERE Menu = {$codMenu}\n                        AND MenuDetalle = {$codSubmenu} \n                        AND Perfil = {$perfil} \n                        AND Entidad = 'Sys'";
                $cod_det_submenu = (int) fetchOne($Q_det_submenu, $vConex)->Codigo;
                if ($cod_det_submenu) {
                    $s .= "El submenu {$codSubmenu} ya esta registrado<br>";
                } else {
                    //Si el submenu no existe en el detalle de submenu del perfil
                    $data_INSERT = array("Menu" => $codMenu, "MenuDetalle" => $codSubmenu, "Estado" => "Activo", "Perfil" => $perfil, "Entidad" => "Sys");
                    insert("menu_empresa_perfil", $data_INSERT, $vConex);
                    $s .= "Se inserto {$codSubmenu} para el perfil {$perfil} en la entidad Sys<br>";
                }
            }
            W($s);
            MenuPerfil("detallePerfilView");
            break;
        case "PActualizaItemPerfilEmpresa":
            //Este proceso barre todo los submenus de la entidad Sys con su respectivo perfil del detalle de la tabla menu_empresa_perfil
            $perfil = get("perfil_cod");
            $CodMEP = get("CodMEP");
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodMenu = post("ky");
            if (!$MxcodMenu) {
                W("Debes seleccionar un Módulo de menu para poder actualizar los items...<br>");
                MenuPerfil("detallePerfilViewEmprPerfil");
            }
            $FILTER = implode(",", $MxcodMenu);
            $Q_det_submenu = "SELECT Codigo, Menu, MenuDetalle, Estado\n                        FROM menu_empresa_perfil\n                        WHERE Perfil = {$perfil} \n                        AND Entidad = 'Sys'\n                        AND Menu IN({$FILTER})";
            $MxDet_submenu = fetchAll($Q_det_submenu, $vConex);
            if (!$MxDet_submenu) {
                W("No se encontro items para actualizar");
            }
            foreach ($MxDet_submenu as $Det_submenu) {
                $codSubmenu = (int) $Det_submenu->MenuDetalle;
                $codMenu = (int) $Det_submenu->Menu;
                $Estado = (string) $Det_submenu->Estado;
                $Q_det_submenu_aux = "SELECT Codigo\n                        FROM menu_empresa_perfil\n                        WHERE Menu = {$codMenu}\n                        AND MenuDetalle = {$codSubmenu} \n                        AND Perfil = {$perfil} \n                        AND Entidad = '{$CodMEP}'";
                $cod_det_submenu = (int) fetchOne($Q_det_submenu_aux, $vConex)->Codigo;
                if ($cod_det_submenu) {
                    Update("menu_empresa_perfil", ["Estado" => $Estado], ["Codigo" => $cod_det_submenu], $vConex);
                    $s .= "Se actualizo el Estado del submenu {$codSubmenu} para este perfil<br>";
                } else {
                    //Si el submenu no existe en el detalle de submenu del perfil
                    $data_INSERT = array("Menu" => $codMenu, "MenuDetalle" => $codSubmenu, "Estado" => "Activo", "Perfil" => $perfil, "Entidad" => $CodMEP);
                    insert("menu_empresa_perfil", $data_INSERT, $vConex);
                    $s .= "Se inserto {$codSubmenu} para el perfil {$perfil} de la entidad {$CodMEP}<br>";
                }
            }
            W($s);
            MenuPerfil("detallePerfilViewEmprPerfil");
            break;
        case "PUpdateSubItem":
            //Este proceso barre todo los submenus de la entidad Sys con su respectivo perfil del detalle de la tabla menu_empresa_perfil
            $perfil = get("perfil_cod");
            $CodMenu = get("CodMenu");
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodSubMenu = post("ky");
            if (!$MxcodSubMenu) {
                W("Debes seleccionar un Módulo de Submenu...<br>");
                MenuPerfil("detalle_submenu");
            }
            foreach ($MxcodSubMenu as $codSubmenu) {
                $Q_det_submenu_aux = "SELECT Codigo\n                        FROM menu_empresa_perfil\n                        WHERE Menu = {$CodMenu}\n                        AND MenuDetalle = {$codSubmenu} \n                        AND Perfil = {$perfil} \n                        AND Entidad = 'Sys'";
                $cod_det_submenu = (int) fetchOne($Q_det_submenu_aux, $vConex)->Codigo;
                if ($cod_det_submenu) {
                    $s .= "El submenu {$codSubmenu} ya esta registrado<br>";
                } else {
                    //Si el submenu no existe en el detalle de submenu del perfil
                    $data_INSERT = array("Menu" => $CodMenu, "MenuDetalle" => $codSubmenu, "Estado" => "Activo", "Perfil" => $perfil, "Entidad" => "Sys");
                    insert("menu_empresa_perfil", $data_INSERT, $vConex);
                    $s .= "Se inserto {$codSubmenu} para el perfil {$perfil} en la entidad Sys<br>";
                }
            }
            W($s);
            MenuPerfil("detalle_submenu");
            #MenuPerfil("PUpdateSubItem_empresa");
            break;
        case "PUpdateSubItem_empresa":
            //Este proceso barre todo los submenus de la entidad Sys con su respectivo perfil del detalle de la tabla menu_empresa_perfil
            $perfil = get("perfil_cod");
            $CodMEP = get("CodMEP");
            $CodMenu = get("CodMenu");
            //Definiendo si el array de codigo de menus existe para aplicar un filtro
            $MxcodSubMenu = post("ky");
            if (!$MxcodSubMenu) {
                W("Debes seleccionar un Módulo de Submenu...<br>");
                MenuPerfil("detalle_submenu_empresa");
            }
            $FILTER = implode(",", $MxcodSubMenu);
            $Q_det_submenu = "SELECT Codigo, Menu, MenuDetalle, Estado\n                        FROM menu_empresa_perfil\n                        WHERE Perfil = {$perfil} \n                        AND Entidad = 'Sys'\n                        AND Menu = {$CodMenu}\n                        AND MenuDetalle IN({$FILTER})";
            $MxDet_submenu = fetchAll($Q_det_submenu, $vConex);
            if (!$MxDet_submenu) {
                W("No se encontro submenus para actualizar");
            }
            foreach ($MxDet_submenu as $Det_submenu) {
                $codSubmenu = (int) $Det_submenu->MenuDetalle;
                $codMenu = (int) $Det_submenu->Menu;
                $Estado = (string) $Det_submenu->Estado;
                $Q_det_submenu_aux = "SELECT Codigo\n                        FROM menu_empresa_perfil\n                        WHERE Menu = {$codMenu}\n                        AND MenuDetalle = {$codSubmenu} \n                        AND Perfil = {$perfil} \n                        AND Entidad = '{$CodMEP}'";
                $cod_det_submenu = (int) fetchOne($Q_det_submenu_aux, $vConex)->Codigo;
                if ($cod_det_submenu) {
                    Update("menu_empresa_perfil", ["Estado" => $Estado], ["Codigo" => $cod_det_submenu], $vConex);
                    $s .= "Se actualizo el Estado del submenu {$codSubmenu} para este perfil<br>";
                } else {
                    //Si el submenu no existe en el detalle de submenu del perfil
                    $data_INSERT = array("Menu" => $codMenu, "MenuDetalle" => $codSubmenu, "Estado" => "Activo", "Perfil" => $perfil, "Entidad" => $CodMEP);
                    insert("menu_empresa_perfil", $data_INSERT, $vConex);
                    $s .= "Se inserto {$codSubmenu} para el perfil {$perfil} de la entidad {$CodMEP}<br>";
                }
            }
            W($s);
            MenuPerfil("detalle_submenu_empresa");
            break;
        case "detallePerfil":
            $perfil = get("perfil_cod");
            $sql = "SELECT Codigo, Menu FROM menu_empresa_det ";
            $consulta = mysql_query($sql, $vConex);
            while ($r = mysql_fetch_array($consulta)) {
                $sql = "SELECT Codigo\n                                                            FROM menu_empresa_perfil\n                                                            WHERE Menu ='" . $r["Menu"] . "' AND MenuDetalle = '" . $r["Codigo"] . "' AND Perfil ='" . $perfil . "' AND Entidad = 'Sys' ";
                $rg = fetch($sql);
                $codigo = $rg["Codigo"];
                if ($codigo) {
                    $s .= 'ya ingreso el Menu  ' . $r["Codigo"] . ' <br>';
                } else {
                    $sql = 'INSERT INTO menu_empresa_perfil (Menu,MenuDetalle,Estado,Perfil,Entidad)
                                                    VALUES ("' . $r["Menu"] . '","' . $r["Codigo"] . '","Activo","' . $perfil . '","Sys")';
                    xSQL($sql, $vConex);
                    $s .= 'Se inserto el Menu  ' . $r["Codigo"] . ' <br>';
                }
            }
            break;
        case "EditarMenuPerfil":
            $Perfil_cod = get("perfil_cod");
            $Codigo = get("Codigo");
            $uRLForm = "Actualizar]" . $enlace . "?metodo=menu_empresa_perfil_edit&transaccion=UPDATE&Codigo=" . $Codigo . "&perfil_cod=" . $Perfil_cod . "]panelB-R]F]}";
            $titulo = "Añadir Detalle";
            $tSelectD = '';
            $form = c_form($titulo, $vConex, "menu_empresa_perfil_edit", "CuadroA", $path, $uRLForm, $Codigo, $tSelectD);
            $s = "<div style='width:280px;padding:0px 0px 0px 30px;'>" . $form . "</div>";
            break;
        case "EditarMenuPerfilEmpresa":
            ## PARAMETRO POR DEFECTO DE REPORTE (ListR3)
            $pagina_start = get('pagina-start');
            $CodMEP = get("CodMEP");
            $Perfil_cod = get("perfil_cod");
            $Codigo = get("Codigo");
            $uRLForm = "Actualizar]{$enlace}?metodo=menu_empresa_perfil_edit_empresa&transaccion=UPDATE&Codigo={$Codigo}&perfil_cod={$Perfil_cod}&CodMEP={$CodMEP}&pagina-start={$pagina_start}]panelB-R]F]}";
            $titulo = "Añadir Detalle";
            $tSelectD = '';
            $form = c_form($titulo, $vConex, "menu_empresa_perfil_edit", "CuadroA", $path, $uRLForm, $Codigo, $tSelectD);
            $s = "<div style='width:280px;padding:0px 0px 0px 30px;'>" . $form . "</div>";
            break;
    }
    WE($s);
}
function asiento_stc($rv, $ta, $glosa)
{
    global $ConexionEmpresa;
    $sql = 'INSERT INTO ct_asiento( CtaSuscripcion, UMiembro, FHCreacion, IpPublica, IpPrivada, Tipo_Asiento, Numero, Fecha,
            Glosa, Estado, DocSerie, DocNumero, TipoDoc, Moneda, Entidad) values 
            ("' . $_SESSION['CtaSuscripcion'] . '","' . $_SESSION['UMiembro'] . '","' . date('y-m-d') . '", "' . getRealIP() . '", "' . getRealIP() . '", 1 ,"' . $ta . '",
            "' . $rv['Emision'] . '","' . $glosa . '",1,"' . $rv['DocSerie'] . '","' . $rv['DocNumero'] . '","' . $rv['DocTipo'] . '","' . $rv['Moneda'] . '",
            "' . $rv['Cliente'] . '")';
    xSQL2($sql, $ConexionEmpresa);
    $codasi = mysql_insert_id($ConexionEmpresa);
    $sql1 = "INSERT INTO ct_asiento_det( CtaSuscripcion, UMiembro, FHCreacion, IpPublica, IpPrivada, Tipo_Asiento, Cuenta, Tipo_Documento, \n            Moneda, Centro_Costos, Fecha, DocSerie, DocNumero, Glosa, Debe, Asiento ) VALUES ( '" . $_SESSION['CtaSuscripcion'] . "',\n            '" . $_SESSION['UMiembro'] . "', '" . date('y-m-d') . "', '" . getRealIP() . "', '" . getRealIP() . "',1,53,'" . $rv['DocTipo'] . "',\n            '" . $rv['Moneda'] . "', '1001','" . $rv['Emision'] . "','" . $rv['DocSerie'] . "','" . $rv['DocNumero'] . "', 'CUENTAS POR COBRAR COMERCIALES',\n            '" . $rv['Total'] . "','" . $codasi . "')";
    xSQL2($sql1, $ConexionEmpresa);
    $sql1 = "INSERT INTO ct_asiento_det( CtaSuscripcion, UMiembro, FHCreacion, IpPublica, IpPrivada, Tipo_Asiento, Cuenta, Tipo_Documento, \n            Moneda, Centro_Costos, Fecha, DocSerie, DocNumero, Glosa, Haber, Asiento ) VALUES ( '" . $_SESSION['CtaSuscripcion'] . "',\n            '" . $_SESSION['UMiembro'] . "', '" . date('y-m-d') . "', '" . getRealIP() . "', '" . getRealIP() . "',1,791,'" . $rv['DocTipo'] . "',\n            '" . $rv['Moneda'] . "', '1001','" . $rv['Emision'] . "','" . $rv['DocSerie'] . "','" . $rv['DocNumero'] . "', 'TRIBUTOS CONTRAPRESTACIONES Y APORTES AL SISTEMA DE PENSIONES Y DE SALUD POR PAGAR ','" . $rv['Igv'] . "','" . $codasi . "')";
    xSQL2($sql1, $ConexionEmpresa);
    $sql1 = "INSERT INTO ct_asiento_det( CtaSuscripcion, UMiembro, FHCreacion, IpPublica, IpPrivada, Tipo_Asiento, Cuenta, Tipo_Documento, \n            Moneda, Centro_Costos, Fecha, DocSerie, DocNumero, Glosa, Haber, Asiento ) VALUES ( '" . $_SESSION['CtaSuscripcion'] . "',\n            '" . $_SESSION['UMiembro'] . "', '" . date('y-m-d') . "', '" . getRealIP() . "', '" . getRealIP() . "',1,1437,'" . $rv['DocTipo'] . "',\n            '" . $rv['Moneda'] . "', '1001','" . $rv['Emision'] . "','" . $rv['DocSerie'] . "','" . $rv['DocNumero'] . "', 'VENTAS',\n            '" . $rv['BaseImp'] . "','" . $codasi . "')";
    xSQL2($sql1, $ConexionEmpresa);
}
function UpdateCampos($codigo)
{
    global $ConexionEmpresa;
    $cSqlAsiento = "SELECT a.Codigo,a.Moneda,a.Total,a.Igv,a.SubTotal,a.Tipo_Cambio ,ad.Codigo AS coddet,ad.Cuenta,\n                         ta.Debe,ta.Haber,ad.Cargo_MO,ad.Abono_MO,ad.Asiento\n                         FROM  ct_asiento a\n                         LEFT JOIN ct_asiento_det AS ad ON ad.Asiento = a.Codigo\n                         LEFT JOIN ct_plan_cuentas AS pa ON pa.Cuenta = ad.Cuenta\n                         LEFT JOIN ct_configuracion_tipo_asiento_det AS ta ON pa.codigo=ta.cuenta\n                         WHERE ad.Codigo =" . $codigo . "";
    # W($cSqlAsiento);
    $res = mysql_query($cSqlAsiento, $ConexionEmpresa);
    while ($cell = mysql_fetch_array($res)) {
        $nMoneda = $cell['Moneda'];
        $TipoCambio = $cell['Tipo_Cambio'];
        $cCodDet = $cell['coddet'];
        $CargoMN = $cell["Cargo_MO"];
        #Porcentaje($cell["SubTotal"],$cell['Debe'],($nMoneda==1?1:2),$TipoCambio);
        $AbonoMN = $cell["Abono_MO"];
        #Porcentaje($cell["SubTotal"],$cell['Haber'],($nMoneda==1?1:2),$TipoCambio);
        if ($nMoneda == 1) {
            $CargoME = $cell["Cargo_MO"] / $TipoCambio;
            $AbonoME = $cell["Abono_MO"] / $TipoCambio;
        } else {
            $CargoME = $cell["Cargo_MO"] * 1;
            $AbonoME = $cell["Abono_MO"] * 1;
        }
        # $CargoME  = Porcentaje($cell["SubTotal"],$cell['Debe'],($nMoneda<>2?2:1),$TipoCambio);
        # $AbonoME = Porcentaje($cell["SubTotal"],$cell['Haber'],($nMoneda<>2?2:1),$TipoCambio);
        $SqlUDet = "  UPDATE ct_asiento_det\n                           SET  Cargo_MN = " . $CargoMN . ", Abono_MN = " . $AbonoMN . ", Cargo_ME = " . $CargoME . ", Abono_ME = " . $AbonoME . "\n                           WHERE Codigo = " . $cCodDet . "";
        #  W($SqlUDet."<br>");
        xSQL2($SqlUDet, $ConexionEmpresa);
        #$consulta = mysql_query($SqlUDet, $ConexionEmpresa);
        #$resultadoB = $consulta or die(mysql_error());
        $EM = EstadoMayorizado($cell['Codigo']);
        $SqlEM = "UPDATE ct_asiento SET Mayorizado=" . $EM . " WHERE Codigo=" . $cell['Codigo'] . "";
        xSQL2($SqlEM, $ConexionEmpresa);
        $cCod = $cell['Codigo'];
    }
    return $cCod;
}
function emitirProforma($codPro)
{
    global $ConexionEmpresa;
    $sql = "SELECT * FROM ct_proformas where Codigo='" . $codPro . "'";
    $rgt = rGT($ConexionEmpresa, $sql);
    $array1 = array('CtaSuscripcion' => $_SESSION['CtaSuscripcion']['string'], 'UMiembro' => $_SESSION['UMiembro']['string'], 'FHCreacion' => date('y-m-d h:m:s'), 'IpPublica' => getRealIP(), 'IpPrivada' => getRealIP(), 'Cliente' => $rgt['Cliente'], 'Proformas' => $rgt['Codigo'], 'TipoPago' => $rgt['TipoPago'], 'Moneda' => $rgt['Moneda'], 'Fechaemision' => date('y-m-d h:m:s'), 'TotalPrecio' => $rgt['TotalPrecio'], 'Estado' => 'Pendiente');
    $insert = insert('ct_pedidos', $array1, $ConexionEmpresa);
    $sql = "UPDATE ct_proformas SET estado='Emitido' where codigo='" . $codPro . "'";
    xSQL2($sql, $ConexionEmpresa);
    $sql = "SELECT Articulo,Precio,Cantidad,Total,CodigoParlante FROM ct_proformasdet WHERE proforma='" . $codPro . "'";
    $result = mysql_query($sql, $ConexionEmpresa);
    while ($row = mysql_fetch_array($result)) {
        $array2 = array('CtaSuscripcion' => $_SESSION['CtaSuscripcion']['string'], 'UMiembro' => $_SESSION['UMiembro']['string'], 'FHCreacion' => date('y-m-d h:m:s'), 'IpPublica' => getRealIP(), 'IpPrivada' => getRealIP(), 'Pedido' => $insert['lastInsertId'], 'Articulo' => $row['Articulo'], 'Precio' => $row['Precio'], 'Cantidad' => $row['Cantidad'], 'Total' => $row['Total'], 'CodigoParlante' => $row['CodigoParlante']);
        insert('pedidosdet', $array2, $ConexionEmpresa);
    }
}