// MODIFICACION FACTURA
 // ONCOMPLETETEXT SUCURSAL
 public List<Sucursal> completeSucursal(String query) {
   String upperQuery = query.toUpperCase();
   List<Sucursal> results = new ArrayList<Sucursal>();
   for (Sucursal i : listSucursal) {
     if (i.getNombre().toUpperCase().startsWith(upperQuery)) {
       results.add(i);
     }
   }
   return results;
 }
  public void modificarFactura() {
    System.out.println("Ingreso a registrarFactura...");
    if (selectedSucursal.getId().intValue() == 0) {
      FacesUtil.infoMessage("VALIDACION", "Seleccione una sucursal");
      return;
    }
    if (verificarNitCi()) {
      selectedFactura.setNombreFactura(textoAutoCompleteCliente);
      selectedFactura.setNitCi(textoAutoCompleteNit);
      selectedFactura.setTotalFacturado(totalImporte);
      selectedFactura.setTotalPagar(totalImporte);
      selectedFactura.setTotalEfectivo(totalImporte);
      selectedFactura.setTotalLiteral(obtenerMontoLiteral(totalImporte));
      selectedFactura.setCliente(selectedCliente);
      selectedFactura.setSucursal(selectedSucursal);
      selectedFactura.setNombreFactura(selectedCliente.getNombre());
      selectedFactura.setImporteSubTotal(
          selectedFactura.getTotalFacturado()
              - selectedFactura.getImporteICE()
              - selectedFactura.getImporteExportaciones()
              - selectedFactura.getImporteVentasGrabadasTasaCero());
      selectedFactura.setImporteBaseDebitoFiscal(
          selectedFactura.getImporteSubTotal()
              - selectedFactura.getImporteDescuentosBonificaciones());
      selectedFactura.setImporteBaseDebitoFiscal(
          selectedFactura.getImporteBaseDebitoFiscal() * 0.13);
      selectedFactura.setMes(Time.obtenerFormatoMM(selectedFactura.getFechaFactura()));

      facturaRegistration.update(selectedFactura);
      FacesUtil.infoMessage("Factura Modificada", "Nº " + selectedFactura.getNumeroFactura());
      loadValuesDefault();
    }
  }
 public Dosificacion obtenerDosificacion(Sucursal suc) {
   for (Dosificacion dos : listDosificacion) {
     if (dos.getSucursal().getId().intValue() == suc.getId().intValue()) {
       return dos;
     }
   }
   return null;
 }
 public void onRowSelectSucursalClick(SelectEvent event) {
   String nombre = event.getObject().toString();
   textSucursal = nombre;
   // Sucursal object = (Sucursal)event.getObject();
   // selectedSucursal = new Sucursal();
   for (Sucursal i : listSucursal) {
     if (i.getNombre().equals(nombre)) {
       selectedSucursal = i;
       Dosificacion dos = obtenerDosificacion(selectedSucursal);
       if (dos != null) {
         selectedFactura.setFechaLimiteEmision(dos.getFechaLimiteEmision());
         selectedFactura.setNumeroAutorizacion(dos.getNumeroAutorizacion());
         selectedFactura.setNumeroFactura(String.valueOf(dos.getNumeroSecuencia()));
         setSelectetDosificacion(obtenerDosificacion(i));
       }
       return;
     }
   }
 }
  public void actionModificarFactura() {
    modificacionFactura2 = true;
    crear = false;
    modificacionFactura = false;
    seleccionarFactura = false;
    //
    selectedSucursal = selectedFactura.getSucursal();
    textSucursal = selectedSucursal.getNombre();
    selectetDosificacion = obtenerDosificacion(selectedSucursal);
    totalImporte = selectedFactura.getTotalFacturado();

    selectedCliente = selectedFactura.getCliente();
    textoAutoCompleteCliente = selectedCliente.getNombre();
    textoAutoCompleteNit = selectedCliente.getNit();
  }