private void getFuncionario(string Pis, out string FuncionarioNome, out string Cracha, out bool Teclado, out string CodigoTeclado, out string CodigoBarras, out string CodigoMifare, out string CodigoTag) { StringBuilder sPIS = new StringBuilder(11); StringBuilder sMatricula = new StringBuilder(20); StringBuilder sNomeFuncionario = new StringBuilder(52); StringBuilder sBiometrico = new StringBuilder(20000); //Valor definido baseado na maior template possivel de ser gerada c/ 10 digitais cadastradas. StringBuilder sHabilitaTeclado = new StringBuilder(1); StringBuilder sCodigoTeclado = new StringBuilder(16); StringBuilder sCodigoBarras = new StringBuilder(20); StringBuilder sCodigoMIFARE = new StringBuilder(20); StringBuilder sCodigoTAG = new StringBuilder(20); StringBuilder MensagemErro = new StringBuilder(256); Cracha = String.Empty; FuncionarioNome = String.Empty; Teclado = false; CodigoTeclado = String.Empty; CodigoBarras = String.Empty; CodigoMifare = String.Empty; CodigoTag = String.Empty; REPZPM_DLL.ID_Comando = REPZPM_DLL.DLLREP_BuscaFuncionario(REPZPM_DLL.Handle, Pis); /*Sucesso na execução do comando*/ if (REPZPM_DLL.ID_Comando > 0) { /************************************************************************************************************************** * MODO IP * ***************************************************************************************************************************/ if (REPZPM_DLL.Modo == 0) { NRegistros = REPZPM_DLL.DLLREP_TotalRetornos(REPZPM_DLL.Handle); /*Verifica se retornaram registros*/ if (NRegistros > 0) { /*Limpa a listagem*/ /*Executa a busca dos Funcionários*/ for (int i = 1; i <= NRegistros; i++) { REPZPM_DLL.Retorno = REPZPM_DLL.DLLREP_RetornoFuncionario(REPZPM_DLL.Handle, i, sPIS, sMatricula, sNomeFuncionario, sBiometrico, sHabilitaTeclado, sCodigoTeclado, sCodigoBarras, sCodigoMIFARE, sCodigoTAG); /*Sucesso na execução do comando*/ if (REPZPM_DLL.Retorno == 1) { Cracha = sMatricula.ToString(); FuncionarioNome = sNomeFuncionario.ToString(); Teclado = sHabilitaTeclado.ToString() == "S" ? true : false; CodigoTeclado = sCodigoTeclado.ToString(); CodigoBarras = sCodigoBarras.ToString(); CodigoMifare = sCodigoMIFARE.ToString(); CodigoTag = sCodigoTAG.ToString(); } else { /*Trata o retorno de erro do REP*/ log.AddLog(REPZPM_DLL.Trata_Retorno_REP(REPZPM_DLL.Retorno), true); return; } } } else { log.AddLog("Não há funcionário cadastrado no REP"); return; } } } else { /*Houve erro no processamento do Handle*/ log.AddLog(REPZPM_DLL.Trata_Retorno_DLL(REPZPM_DLL.ID_Comando)); return; } }