public function new_subcuenta($suma_codigo) { $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($this->codejercicio); if ($eje0) { $codsubcuenta = floatval(sprintf('%-0' . $eje0->longsubcuenta . 's', $this->codcuenta)) + $suma_codigo; $subcuenta = new subcuenta(); $subc0 = $subcuenta->get_by_codigo($codsubcuenta, $this->codejercicio); if ($subc0) { return $subc0; } else { $subc0 = new subcuenta(); $subc0->codcuenta = $this->codcuenta; $subc0->idcuenta = $this->idcuenta; $subc0->codejercicio = $this->codejercicio; $subc0->codsubcuenta = $codsubcuenta; return $subc0; } } else { return FALSE; } }
private function generar_factura($albaranes) { $continuar = TRUE; $factura = new factura_cliente(); $factura->automatica = TRUE; $factura->codalmacen = $albaranes[0]->codalmacen; $factura->coddivisa = $albaranes[0]->coddivisa; $factura->tasaconv = $albaranes[0]->tasaconv; $factura->codejercicio = $albaranes[0]->codejercicio; $factura->codpago = $albaranes[0]->codpago; $factura->codserie = $albaranes[0]->codserie; $factura->editable = FALSE; $factura->irpf = $albaranes[0]->irpf; $factura->numero2 = $albaranes[0]->numero2; $factura->observaciones = $albaranes[0]->observaciones; $factura->recfinanciero = $albaranes[0]->recfinanciero; /// comprobamos la forma de pago para saber si hay que marcar la factura como pagada $formapago = $this->forma_pago->get($factura->codpago); if ($formapago) { if ($formapago->genrecibos == 'Pagados') { $factura->pagada = TRUE; } } /// obtenemos los datos actuales del cliente, por si ha habido cambios $cliente = $this->cliente->get($albaranes[0]->codcliente); if ($cliente) { foreach ($cliente->get_direcciones() as $dir) { if ($dir->domfacturacion) { $factura->apartado = $dir->apartado; $factura->cifnif = $cliente->cifnif; $factura->ciudad = $dir->ciudad; $factura->codcliente = $cliente->codcliente; $factura->coddir = $dir->id; $factura->codpais = $dir->codpais; $factura->codpostal = $dir->codpostal; $factura->direccion = $dir->direccion; $factura->nombrecliente = $cliente->nombrecomercial; $factura->provincia = $dir->provincia; break; } } } /// calculamos neto e iva foreach ($albaranes as $alb) { foreach ($alb->get_lineas() as $l) { $factura->neto += $l->pvptotal; $factura->totaliva += $l->pvptotal * $l->iva / 100; $factura->totalirpf += $l->pvptotal * $l->irpf / 100; $factura->totalrecargo += $l->pvptotal * $l->recargo / 100; } } /// redondeamos $factura->neto = round($factura->neto, FS_NF0); $factura->totaliva = round($factura->totaliva, FS_NF0); $factura->totalirpf = round($factura->totalirpf, FS_NF0); $factura->totalrecargo = round($factura->totalrecargo, FS_NF0); $factura->total = $factura->neto + $factura->totaliva - $factura->totalirpf + $factura->totalrecargo; /// asignamos la mejor fecha posible, pero dentro del ejercicio $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($factura->codejercicio); $factura->fecha = $eje0->get_best_fecha($factura->fecha); $regularizacion = new regularizacion_iva(); if (!$eje0->abierto()) { $this->new_error_msg('El ejercicio ' . $eje0->codejercicio . ' está cerrado.'); } else { if ($regularizacion->get_fecha_inside($factura->fecha)) { /* * comprobamos que la fecha de la factura no esté dentro de un periodo de * IVA regularizado. */ $this->new_error_msg('El IVA de ese periodo ya ha sido regularizado. No se pueden añadir más facturas en esa fecha.'); } else { if ($factura->save()) { foreach ($albaranes as $alb) { foreach ($alb->get_lineas() as $l) { $n = new linea_factura_cliente(); $n->idalbaran = $alb->idalbaran; $n->idfactura = $factura->idfactura; $n->cantidad = $l->cantidad; $n->codimpuesto = $l->codimpuesto; $n->descripcion = $l->descripcion; $n->dtolineal = $l->dtolineal; $n->dtopor = $l->dtopor; $n->irpf = $l->irpf; $n->iva = $l->iva; $n->pvpsindto = $l->pvpsindto; $n->pvptotal = $l->pvptotal; $n->pvpunitario = $l->pvpunitario; $n->recargo = $l->recargo; $n->referencia = $l->referencia; if (!$n->save()) { $continuar = FALSE; $this->new_error_msg("¡Imposible guardar la línea el artículo " . $n->referencia . "! "); break; } } } if ($continuar) { foreach ($albaranes as $alb) { $alb->idfactura = $factura->idfactura; $alb->ptefactura = FALSE; if (!$alb->save()) { $this->new_error_msg("¡Imposible vincular el " . FS_ALBARAN . " con la nueva factura!"); $continuar = FALSE; break; } } if ($continuar) { $this->generar_asiento($factura); } else { if ($factura->delete()) { $this->new_error_msg("La factura se ha borrado."); } else { $this->new_error_msg("¡Imposible borrar la factura!"); } } } else { if ($factura->delete()) { $this->new_error_msg("La factura se ha borrado."); } else { $this->new_error_msg("¡Imposible borrar la factura!"); } } } else { $this->new_error_msg("¡Imposible guardar la factura!"); } } } }
public function full_test($duplicados = TRUE) { $status = TRUE; /* * Comprobamos que el asiento no esté vacío o descuadrado. * También comprobamos que las subcuentas pertenezcan al mismo ejercicio. */ $debe = 0; $haber = 0; $partidas = $this->get_partidas(); if ($partidas) { foreach ($partidas as $p) { $debe += $p->debe; $haber += $p->haber; $sc = $p->get_subcuenta(); if ($sc) { if ($sc->codejercicio != $this->codejercicio) { $this->new_error_msg('La subcuenta ' . $sc->codsubcuenta . ' pertenece a otro ejercicio.'); $status = FALSE; } } else { $this->new_error_msg('Subcuenta ' . $p->codsubcuenta . ' no encontrada.'); $status = FALSE; } } } if (!$this->floatcmp($debe, $haber, FS_NF0, TRUE)) { $this->new_error_msg("Asiento descuadrado. Descuadre: " . round($debe - $haber, FS_NF0 + 1)); $status = FALSE; } /// comprobamos que la fecha sea correcta $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($this->codejercicio); if ($eje0) { if (strtotime($this->fecha) < strtotime($eje0->fechainicio) or strtotime($this->fecha) > strtotime($eje0->fechafin)) { $this->new_error_msg("La fecha de este asiento está fuera del rango del <a target='_blank' href='" . $eje0->url() . "'>ejercicio</a>."); $status = FALSE; } } if ($status and $duplicados) { /// comprobamos si es un duplicado $asientos = $this->db->select("SELECT * FROM " . $this->table_name . " WHERE fecha = " . $this->var2str($this->fecha) . "\n AND concepto = " . $this->var2str($this->concepto) . " AND importe = " . $this->var2str($this->importe) . "\n AND idasiento != " . $this->var2str($this->idasiento) . ";"); if ($asientos) { foreach ($asientos as $as) { /// comprobamos las líneas if (strtolower(FS_DB_TYPE) == 'mysql') { $aux = $this->db->select("SELECT codsubcuenta,debe,haber,codcontrapartida,concepto\n FROM co_partidas WHERE idasiento = " . $this->var2str($this->idasiento) . "\n AND NOT EXISTS(SELECT codsubcuenta,debe,haber,codcontrapartida,concepto FROM co_partidas\n WHERE idasiento = " . $this->var2str($as['idasiento']) . ");"); } else { $aux = $this->db->select("SELECT codsubcuenta,debe,haber,codcontrapartida,concepto\n FROM co_partidas WHERE idasiento = " . $this->var2str($this->idasiento) . "\n EXCEPT SELECT codsubcuenta,debe,haber,codcontrapartida,concepto FROM co_partidas\n WHERE idasiento = " . $this->var2str($as['idasiento']) . ";"); } if (!$aux) { $this->new_error_msg("Este asiento es un posible duplicado de\n <a href='index.php?page=contabilidad_asiento&id=" . $as['idasiento'] . "'>este otro</a>.\n Si no lo es, para evitar este mensaje, simplemente modifica el concepto."); $status = FALSE; } } } } return $status; }
public function full_test($duplicados = TRUE) { $status = TRUE; /// comprobamos la fecha de la factura $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($this->codejercicio); if ($eje0) { if (strtotime($this->fecha) < strtotime($eje0->fechainicio) or strtotime($this->fecha) > strtotime($eje0->fechafin)) { $status = FALSE; $this->new_error_msg("La fecha de esta factura está fuera del rango del <a target='_blank' href='" . $eje0->url() . "'>ejercicio</a>."); } } /// comprobamos las líneas $neto = 0; $iva = 0; $irpf = 0; $recargo = 0; foreach ($this->get_lineas() as $l) { if (!$l->test()) { $status = FALSE; } $neto += $l->pvptotal; $iva += $l->pvptotal * $l->iva / 100; $irpf += $l->pvptotal * $l->irpf / 100; $recargo += $l->pvptotal * $l->recargo / 100; } $neto = round($neto, FS_NF0); $iva = round($iva, FS_NF0); $irpf = round($irpf, FS_NF0); $recargo = round($recargo, FS_NF0); $total = $neto + $iva - $irpf + $recargo; if (!$this->floatcmp($this->neto, $neto, FS_NF0, TRUE)) { $this->new_error_msg("Valor neto de la factura incorrecto. Valor correcto: " . $neto); $status = FALSE; } else { if (!$this->floatcmp($this->totaliva, $iva, FS_NF0, TRUE)) { $this->new_error_msg("Valor totaliva de la factura incorrecto. Valor correcto: " . $iva); $status = FALSE; } else { if (!$this->floatcmp($this->totalirpf, $irpf, FS_NF0, TRUE)) { $this->new_error_msg("Valor totalirpf de la factura incorrecto. Valor correcto: " . $irpf); $status = FALSE; } else { if (!$this->floatcmp($this->totalrecargo, $recargo, FS_NF0, TRUE)) { $this->new_error_msg("Valor totalrecargo de la factura incorrecto. Valor correcto: " . $recargo); $status = FALSE; } else { if (!$this->floatcmp($this->total, $total, FS_NF0, TRUE)) { $this->new_error_msg("Valor total de la factura incorrecto. Valor correcto: " . $total); $status = FALSE; } else { if (!$this->floatcmp($this->totaleuros, $this->total * $this->tasaconv, FS_NF0, TRUE)) { $this->new_error_msg("Valor totaleuros de la factura incorrecto.\n Valor correcto: " . round($this->total * $this->tasaconv, FS_NF0)); $status = FALSE; } } } } } } /// comprobamos las líneas de IVA $this->get_lineas_iva(); $linea_iva = new linea_iva_factura_proveedor(); if (!$linea_iva->factura_test($this->idfactura, $neto, $iva, $recargo)) { $status = FALSE; } /// comprobamos el asiento if (isset($this->idasiento)) { $asiento = $this->get_asiento(); if ($asiento) { if ($asiento->tipodocumento != 'Factura de proveedor' or $asiento->documento != $this->codigo) { $this->new_error_msg("Esta factura apunta a un <a href='" . $this->asiento_url() . "'>asiento incorrecto</a>."); $status = FALSE; } } else { $this->new_error_msg("Asiento no encontrado."); $status = FALSE; } } if ($status and $duplicados) { /// comprobamos si es un duplicado $facturas = $this->db->select("SELECT * FROM " . $this->table_name . " WHERE fecha = " . $this->var2str($this->fecha) . "\n AND codproveedor = " . $this->var2str($this->codproveedor) . " AND total = " . $this->var2str($this->total) . "\n AND observaciones = " . $this->var2str($this->observaciones) . " AND idfactura != " . $this->var2str($this->idfactura) . ";"); if ($facturas) { foreach ($facturas as $fac) { /// comprobamos las líneas $aux = $this->db->select("SELECT referencia FROM lineasfacturasprov WHERE\n idfactura = " . $this->var2str($this->idfactura) . "\n AND referencia NOT IN (SELECT referencia FROM lineasfacturasprov\n WHERE idfactura = " . $this->var2str($fac['idfactura']) . ");"); if (!$aux) { $this->new_error_msg("Esta factura es un posible duplicado de\n <a href='index.php?page=compras_factura&id=" . $fac['idfactura'] . "'>esta otra</a>.\n Si no lo es, para evitar este mensaje, simplemente modifica las observaciones."); $status = FALSE; } } } } return $status; }
protected function private_core() { /// cargamos las putas secuencias para que se actualicen. /// Abanq/Eneboo, yo te maldigooooo!!!!!!!!!!!!!!!!!!!!!! $sec0 = new secuencia_ejercicio(); $sec1 = new secuencia_contabilidad(); $sec2 = new secuencia(); /// ¿El usuario tiene permiso para eliminar en esta página? $this->allow_delete = $this->user->allow_delete_on(__CLASS__); $this->ejercicio = FALSE; if (isset($_POST['codejercicio'])) { $eje0 = new ejercicio(); $this->ejercicio = $eje0->get($_POST['codejercicio']); if ($this->ejercicio) { $this->ejercicio->nombre = $_POST['nombre']; $this->ejercicio->fechainicio = $_POST['fechainicio']; $this->ejercicio->fechafin = $_POST['fechafin']; $this->ejercicio->longsubcuenta = intval($_POST['longsubcuenta']); $this->ejercicio->estado = $_POST['estado']; if ($this->ejercicio->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible guardar los datos.'); } } } else { if (isset($_GET['cod'])) { $eje0 = new ejercicio(); $this->ejercicio = $eje0->get($_GET['cod']); } } if ($this->ejercicio) { if (isset($_GET['export'])) { $this->exportar_xml(); } else { $this->page->title = $this->ejercicio->codejercicio . ' (' . $this->ejercicio->nombre . ')'; if (isset($_GET['cerrar']) and isset($_GET['petid'])) { if ($this->duplicated_petition($_GET['petid'])) { $this->new_error_msg('Petición duplicada. Evita hacer doble clic sobre los botones.'); } else { $this->cerrar_ejercicio(); } } else { $this->ejercicio->full_test(); } $asiento = new asiento(); $this->asiento_apertura_url = FALSE; if ($this->ejercicio->idasientoapertura) { $asiento_a = $asiento->get($this->ejercicio->idasientoapertura); if ($asiento_a) { $this->asiento_apertura_url = $asiento_a->url(); } } $this->asiento_cierre_url = FALSE; if ($this->ejercicio->idasientocierre) { $asiento_c = $asiento->get($this->ejercicio->idasientocierre); if ($asiento_c) { $this->asiento_cierre_url = $asiento_c->url(); } } $this->asiento_pyg_url = FALSE; if ($this->ejercicio->idasientopyg) { $asiento_pyg = $asiento->get($this->ejercicio->idasientopyg); if ($asiento_pyg) { $this->asiento_pyg_url = $asiento_pyg->url(); } } /// comprobamos el proceso de importación $this->importar_xml(); $this->offset = 0; if (isset($_GET['offset'])) { $this->offset = intval($_GET['offset']); } if (!isset($_GET['listar'])) { $this->listar = 'cuentas'; } else { if ($_GET['listar'] == 'grupos') { $this->listar = 'grupos'; } else { if ($_GET['listar'] == 'epigrafes') { $this->listar = 'epigrafes'; } else { if ($_GET['listar'] == 'subcuentas') { $this->listar = 'subcuentas'; } else { $this->listar = 'cuentas'; } } } } switch ($this->listar) { default: $cuenta = new cuenta(); $this->listado = $cuenta->full_from_ejercicio($this->ejercicio->codejercicio); break; case 'grupos': $ge = new grupo_epigrafes(); $this->listado = $ge->all_from_ejercicio($this->ejercicio->codejercicio); break; case 'epigrafes': $epigrafe = new epigrafe(); $this->listado = $epigrafe->all_from_ejercicio($this->ejercicio->codejercicio); break; case 'subcuentas': $subcuenta = new subcuenta(); $this->listado = $subcuenta->all_from_ejercicio($this->ejercicio->codejercicio); break; } } } else { $this->new_error_msg('Ejercicio no encontrado.'); } }
protected function private_core() { $this->tipo = FALSE; $this->subcuenta = FALSE; $this->cuenta = new cuenta(); $this->codejercicio = $this->default_items->codejercicio(); if (isset($_POST['codejercicio'])) { $this->codejercicio = $_POST['codejercicio']; } /// comprobamos el ejercicio $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($this->codejercicio); if (!$eje0) { $eje0 = $ejercicio->get_by_fecha(date('d-m-Y')); if ($eje0) { $this->codejercicio = $eje0->codejercicio; } } if (isset($_POST['ejercicio']) and isset($_POST['query'])) { $this->new_search(); } else { if (isset($_REQUEST['cli'])) { $this->tipo = 'cli'; $cliente = new cliente(); $this->cliente = $cliente->get($_REQUEST['cli']); if ($this->cliente) { $subcuenta_cliente = new subcuenta_cliente(); if (isset($_GET['delete_sca'])) { $aux_sca = $subcuenta_cliente->get2($_GET['delete_sca']); if ($aux_sca) { if ($aux_sca->delete()) { $this->new_message('El cliente ya no está asocuado a esa subcuenta.'); } else { $this->new_error_msg('Imposible quitar la subcuenta.'); } } else { $this->new_error_msg('Relación con la subcuenta no encontrada.'); } } else { if (isset($_GET['idsc'])) { $this->subcuenta_a = $subcuenta_cliente->get($_GET['cli'], $_GET['idsc']); if ($this->subcuenta_a) { $this->subcuenta = $this->subcuenta_a->get_subcuenta(); $this->codejercicio = $this->subcuenta_a->codejercicio; } } else { if (isset($_POST['idsc'])) { $this->subcuenta_a = $subcuenta_cliente->get($_POST['cli'], $_POST['idsc']); if ($this->subcuenta_a) { $subc = new subcuenta(); $subc0 = $subc->get($_POST['idsc2']); if ($subc0) { $this->subcuenta_a->idsubcuenta = $subc0->idsubcuenta; $this->subcuenta_a->codsubcuenta = $subc0->codsubcuenta; $this->subcuenta_a->codejercicio = $subc0->codejercicio; if ($this->subcuenta_a->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al cliente.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Subcuenta no encontrada.'); $this->subcuenta = $this->subcuenta_a->get_subcuenta(); } } } else { if (isset($_POST['idsc2'])) { $subc = new subcuenta(); $subc0 = $subc->get($_POST['idsc2']); if ($subc0) { $subcuenta_cliente->codcliente = $this->cliente->codcliente; $subcuenta_cliente->idsubcuenta = $subc0->idsubcuenta; $subcuenta_cliente->codsubcuenta = $subc0->codsubcuenta; $subcuenta_cliente->codejercicio = $subc0->codejercicio; if ($subcuenta_cliente->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al cliente.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Subcuenta no encontrada.'); } } else { if (isset($_POST['cuenta'])) { $cuenta0 = $this->cuenta->get($_POST['cuenta']); if ($cuenta0) { $subc0 = new subcuenta(); $subc0->codcuenta = $cuenta0->codcuenta; $subc0->coddivisa = $this->default_items->coddivisa(); $subc0->codejercicio = $cuenta0->codejercicio; $subc0->codsubcuenta = $_POST['codsubcuenta']; $subc0->descripcion = $this->cliente->nombre; $subc0->idcuenta = $cuenta0->idcuenta; if ($subc0->save()) { $subcuenta_cliente->codcliente = $this->cliente->codcliente; $subcuenta_cliente->idsubcuenta = $subc0->idsubcuenta; $subcuenta_cliente->codsubcuenta = $subc0->codsubcuenta; $subcuenta_cliente->codejercicio = $subc0->codejercicio; if ($subcuenta_cliente->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al cliente.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Imposible crear la sucuenta.'); } } else { $this->new_error_msg('Cuenta no encontrada.'); } } else { foreach ($subcuenta_cliente->all_from_cliente($_REQUEST['cli']) as $sca) { if ($sca->codejercicio == $this->codejercicio) { $this->subcuenta_a = $sca; $this->subcuenta = $sca->get_subcuenta(); break; } } } } } } } } } else { if (isset($_REQUEST['pro'])) { $this->tipo = 'pro'; $proveedor = new proveedor(); $this->proveedor = $proveedor->get($_REQUEST['pro']); if ($this->proveedor) { $subcuenta_proveedor = new subcuenta_proveedor(); if (isset($_GET['delete_sca'])) { $aux_sca = $subcuenta_proveedor->get2($_GET['delete_sca']); if ($aux_sca) { if ($aux_sca->delete()) { $this->new_message('El proveedor ya no está asocuado a esa subcuenta.'); } else { $this->new_error_msg('Imposible quitar la subcuenta.'); } } else { $this->new_error_msg('Relación con la subcuenta no encontrada.'); } } else { if (isset($_GET['idsc'])) { $this->subcuenta_a = $subcuenta_proveedor->get($_GET['pro'], $_GET['idsc']); if ($this->subcuenta_a) { $this->subcuenta = $this->subcuenta_a->get_subcuenta(); $this->codejercicio = $this->subcuenta_a->codejercicio; } } else { if (isset($_POST['idsc'])) { $this->subcuenta_a = $subcuenta_proveedor->get($_POST['pro'], $_POST['idsc']); if ($this->subcuenta_a) { $subc = new subcuenta(); $subc0 = $subc->get($_POST['idsc2']); if ($subc0) { $this->subcuenta_a->idsubcuenta = $subc0->idsubcuenta; $this->subcuenta_a->codsubcuenta = $subc0->codsubcuenta; $this->subcuenta_a->codejercicio = $subc0->codejercicio; if ($this->subcuenta_a->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al proveedor.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Subcuenta no encontrada.'); $this->subcuenta = $this->subcuenta_a->get_subcuenta(); } } } else { if (isset($_POST['idsc2'])) { $subc = new subcuenta(); $subc0 = $subc->get($_POST['idsc2']); if ($subc0) { $subcuenta_proveedor->codproveedor = $this->proveedor->codproveedor; $subcuenta_proveedor->idsubcuenta = $subc0->idsubcuenta; $subcuenta_proveedor->codsubcuenta = $subc0->codsubcuenta; $subcuenta_proveedor->codejercicio = $subc0->codejercicio; if ($subcuenta_proveedor->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al cliente.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Subcuenta no encontrada.'); } } else { if (isset($_POST['cuenta'])) { $cuenta0 = $this->cuenta->get($_POST['cuenta']); if ($cuenta0) { $subc0 = new subcuenta(); $subc0->codcuenta = $cuenta0->codcuenta; $subc0->coddivisa = $this->default_items->coddivisa(); $subc0->codejercicio = $cuenta0->codejercicio; $subc0->codsubcuenta = $_POST['codsubcuenta']; $subc0->descripcion = $this->proveedor->nombre; $subc0->idcuenta = $cuenta0->idcuenta; if ($subc0->save()) { $subcuenta_proveedor->codproveedor = $this->proveedor->codproveedor; $subcuenta_proveedor->idsubcuenta = $subc0->idsubcuenta; $subcuenta_proveedor->codsubcuenta = $subc0->codsubcuenta; $subcuenta_proveedor->codejercicio = $subc0->codejercicio; if ($subcuenta_proveedor->save()) { $this->new_message('Datos guardados correctamente.'); } else { $this->new_error_msg('Imposible asignar la subcuenta al proveedor.'); } $this->subcuenta = $subc0; } else { $this->new_error_msg('Imposible crear la sucuenta.'); } } else { $this->new_error_msg('Cuenta no encontrada.'); } } else { foreach ($subcuenta_proveedor->all_from_proveedor($_REQUEST['pro']) as $sca) { if ($sca->codejercicio == $this->codejercicio) { $this->subcuenta_a = $sca; $this->subcuenta = $sca->get_subcuenta(); break; } } } } } } } } } } } }
public function get_ejercicio() { $eje = new \ejercicio(); return $eje->get($this->codejercicio); }
/** * Genera el balance de situación. * @param type $codeje */ public function generar_sit($codeje) { $ejercicio = new ejercicio(); $eje0 = $ejercicio->get($codeje); if ($eje0) { $pdf_doc = new fs_pdf(); $pdf_doc->pdf->addInfo('Title', 'Balance de pérdidas y ganancias de ' . $this->empresa->nombre); $pdf_doc->pdf->addInfo('Subject', 'Balance de pérdidas y ganancias de ' . $this->empresa->nombre); $pdf_doc->pdf->addInfo('Author', $this->empresa->nombre); $pdf_doc->pdf->ezStartPageNumbers(580, 10, 10, 'left', '{PAGENUM} de {TOTALPAGENUM}'); $this->situacion($pdf_doc, $eje0, FALSE); $pdf_doc->show(); } }
private function buscar_subcuenta() { /// desactivamos la plantilla HTML $this->template = FALSE; $subcuenta = new subcuenta(); $eje0 = new ejercicio(); $ejercicio = $eje0->get($_REQUEST['codejercicio']); $json = array(); foreach ($subcuenta->search_by_ejercicio($ejercicio->codejercicio, $_REQUEST['buscar_subcuenta']) as $subc) { $json[] = array('value' => $subc->codsubcuenta, 'data' => $subc->descripcion, 'saldo' => $subc->saldo, 'link' => $subc->url()); } header('Content-Type: application/json'); echo json_encode(array('query' => $_REQUEST['buscar_subcuenta'], 'suggestions' => $json)); }