public boolean verificarNitCi() {
    System.out.println("verificarNitCi() cliente id:" + selectedCliente.getId());
    try {
      System.out.println(
          "textoAutoCompleteNit: "
              + textoAutoCompleteNit
              + " - textoAutoCompleteCliente: "
              + textoAutoCompleteCliente);
      if (textoAutoCompleteNit.trim().length() == 0
          || textoAutoCompleteCliente.trim().length() == 0) {
        FacesUtil.infoMessage("VALIDACION", "Agregue un Cliente");
        return false;
      }
      if (selectedCliente.getId() == 0) {

        Cliente cliente = new Cliente();
        cliente.setCi(textoAutoCompleteNit);
        cliente.setNit(textoAutoCompleteNit);
        cliente.setCodigo("");
        cliente.setCorreo("Ninguno");
        cliente.setDiasPermitidosCredito(0);
        cliente.setDireccion("Ninguna");
        cliente.setEmpresa(empresaLogin);
        cliente.setEstado("AC");
        cliente.setFechaRegistro(new Date());
        cliente.setTelefono("0");
        cliente.setNombre(textoAutoCompleteCliente);
        cliente.setRazonSocial(textoAutoCompleteCliente);
        cliente.setTipo("JURIDICO");
        cliente.setUsuarioRegistro(nombreUsuario);
        try {
          selectedCliente = clienteRegistration.create(cliente);
          System.out.println("Nit registrado...." + selectedCliente.getNit());
        } catch (Exception e) {
          System.out.println("22222");
          if (e.getCause()
              .getMessage()
              .equals(
                  "org.hibernate.exception.ConstraintViolationException: could not execute statement")) {
            try {
              Cliente c2 = clienteRepository.findByNombre(textoAutoCompleteCliente);
              c2.setCi(textoAutoCompleteNit);
              c2.setNit(textoAutoCompleteNit);
              c2.setNombre(textoAutoCompleteCliente);
              c2.setRazonSocial(textoAutoCompleteCliente);
              clienteRegistration.update(c2);
              selectedCliente = c2;
            } catch (Exception e2) {
              System.out.println("Error al actualizar cliente");
            }
          }
        }
      }
      return true;

    } catch (Exception e) {
      System.out.println("verificarNitCi Error:" + e.getMessage());
      return false;
    }
  }
  @PostConstruct
  public void initNewReporteFactura() {

    System.out.println(" init new initNewReporteFactura");
    beginConversation();
    setNombreUsuario(sessionMain.getUsuarioLogin().getLogin());
    empresaLogin = sessionMain.getEmpresaLogin();
    gestionLogin = sessionMain.getGestionLogin();
    listClienteNombre = clienteRepository.findActivosByEmpresa(empresaLogin);
    listSucursal = sucursalRepository.findAllActivasOrderedByID();
    listDosificacion = dosificacionRepository.findAllActivas();

    loadValuesDefault();
  }