um produto Software Atelier |
Certex 2002 versão 1,0 |
Validação certex_isValid certex_isCreditCard » certex_creditCardFlag certex_isDigit |
Informação DLL certex_getLicType certex_getLicInfo » certex_licUser » certex_licNum certex_getVersion » certex_dllVersion |
Formatação certex_getFormat certex_setFormat » certex_format certex_getQntDigits |
Auxiliares certex_getUFName » certex_ufName certex_getDocName » certex_docName |
Validação
BYTE certex_isValid( const BYTE nDocType, const LPTSTR lpDocUF, const LPTSTR lpDocNum )
Parâmetros:
nDocType
CNPJ certex_doc_type_CNPJ
CPF certex_doc_type_CPF
PIS (Programa de Integração Social) certex_doc_type_PIS
Título de Eleitor certex_doc_type_TITULO
Inscrição Estadual certex_doc_type_IE
Cartão de Crédito certex_doc_type_CC
lpDocUF
Unidade Federal. Obrigatória quandonDocType
écertex_doc_type_IE
. Em todos os outros tipos de documento este parâmetro é ignorado. Somente os dois primeiros caracteres da string são considerados.lpDocNum
Número do documento a validar. Os espaços (Asc 0x20), pontos (. Asc 0x2E), hífens (- Asc 0x2D), barra (/ Asc 0x2F) são ignorados.Retorna:
certex_result_VALIDO
Número de documento correto certex_result_INVALIDO
Número de documento inválido certex_result_SEM_NUM_DOC
O parâmetro lpDocUF
é nulocertex_result_TIPO_DOC_DESCONHECIDO
O parâmetro nDocType
é desconhecidocertex_result_UF_DESCONHECIDA
O parâmetro lpDocUF
é desconhecidocertex_result_MUNICIPIO_DESCONHECIDO
A Inscrição Estadual se refere a um Município desconhecido certex_result_NUM_DOC_CHR_INVALIDO
Foi encontrado um caractere inválido no parâmetro lpDocNum
certex_result_NUM_DOC_LEN_INVALIDO
O número de caracteres do documento não é o esperado certex_result_DESCONHECIDO
Ocorreu um erro inesperado
BYTE certex_isCreditCard( const LPTSTR lpCC_Num, const DWORD wBufferLen, LPTSTR lpBuffer )
Parâmetros:
lpCC_Num
Número do Cartão de Crédito a validar. Os espaços (Asc 0x20), pontos (. Asc 0x2E), hífens (- Asc 0x2D), barra (/ Asc 0x2F) são ignorados.wBufferLen
Quantidade de caracteres disponíveis nolpBuffer
para escrever a bandeira.lpBuffer
Se o número do Cartão de Crédito for correto, o buffer recebe a bandeira do Cartão de Crédito (AmEx, Visa, MasterCard, Diners, dentre outras). Se a bandeira não é conhecida por Certex, retorna nulo. Se não é nulo (NULL), o tamanho mínimo do buffer deve sercertex_max_flag_size
.Retorna:
certex_result_VALIDO
Número de Cartão de Crédito correto certex_result_INVALIDO
Número de Cartão de Crédito inválido certex_result_SEM_NUM_DOC
O parâmetro lpCC_Num
é nulocertex_result_NUM_DOC_CHR_INVALIDO
Foi encontrado um caractere inválido no parâmetro lpCC_Num
certex_result_NUM_DOC_LEN_INVALIDO
O número de caracteres do documento não é o esperado certex_result_DESCONHECIDO
Ocorreu um erro inesperado Função Derivada (utilização de string)
- Delphi
function certex_creditCardFlag( const lpDocNum: pChar ): string;
- Visual Basic
Public Function certex_creditCardFlag(strCC_Num As String) As String
Retorna:
Uma string vazia se o número do Cartão de Crédito estiver errado. Se o número estiver correto e for de bandeira conhecida, retorna o nome da bandeira. Se não for conhecida retorna a stringBandeira desconhecida
.
BYTE certex_isDigit( const BYTE nDocType, const LPTSTR lpDocUF, const LPTSTR lpDocNum, int* iDigit )
Parâmetros:
nDocType
,lpDocUF
elpDocNum
Ver certex_isValidiDigit
O valor retornado depende do resultado da função, ver tabela abaixo.Retorna:
certex_digits_OK
Os dígitos são corretos (más poderia ser um documento inválido) certex_digits_INVALID
O dígito iDigit
não é valido para o documento informadocertex_digits_FALTAM
Faltam iDigit
para ser um número válidocertex_digits_SOBRAM
Sobram iDigit
para ser um número válidocertex_digits_ERRO
Ocorreu um erro inesperado
Informação da DLL
Nota: Se esta função não é chamada com a Chave de Licença correta, a DLL se comportará como uma DLL de avaliação. A DLL de avaliação demora propositalmente alguns segundos para retornar das funções de validação.
BYTE certex_getLicType( const LPTSTR lpLicKey )
Parâmetro:
lpLicKey
Chave de Licença obtida junto com a DLL personalizada após a obtenção de Licença de Uso.Retorna:
certex_lic_TYPE_REGISTERED
É uma cópia registrada certex_lic_TYPE_DEMO
É uma cópia de avaliação certex_lic_TYPE_AS_DEMO
É uma cópia registrada, mas não foi informada a Chave de Licença lpLicKey
certex_lic_ERROR_NOT_INITED
O código de inicialização não foi executado pelo Sistema Operacional certex_lic_ERROR_CANT_RETRIVE
Não foi possível obter informação, verifique com a janela Propriedades do Windows certex_lic_ERROR_NOT_FOUND
Não foi encontrada a informação, verifique com a janela Propriedades do Windows certex_lic_ERROR_CRC
A DLL está corrupta, é recomendável excluí-a do sistema (pode tratar-se de um virus) certex_lic_ERROR_INVALID_KEY
A Chave de Licença informada é inválida certex_lic_ERROR_UNKNOW
Ocorreu um erro inesperado
DWORD certex_getLicInfo( const BYTE nInfoType, const DWORD wBufferLen, LPTSTR lpBuffer )
Parâmetros:
nInfoType
certex_lic_info_USER_NAME
Nome do Usuário Registrado (a quem a Licença de Uso foi outorgada) certex_lic_info_USER_ID
Número de Identificação do Usuário Registrado wBufferLen
Quantidade de bytes disponíveis nolpBuffer
para escrever a informação.lpBuffer
Buffer que recebe a informação, se não nulo.Retorna:
( wBufferLen == 0 )
A quantidade de caracteres necessários para escrever o solicitado, sem contar o zero final.( wBufferLen > 0 )
A quantidade de caracteres escritos no buffer, sem contar o zero final. Sempre menor ou igual awBufferLen
.Funções Derivadas (utilização de string)
- Delphi
function certex_licUser(): string;
function certex_licNum(): string;
- Visual Basic
Public Function certex_licUser() As String
Public Function certex_licNum() As String
Retornam:
String com as informações solicitadas.
WORD certex_getVersion( )
Parâmetros:
Nenhum.Retorna:
No byte alto (hibyte)major
e no baixominor
da versão.Função Derivada (utilização de string)
- Delphi
function certex_dllVersion(): string;
- Visual Basic
Public Function certex_dllVersion() As String
Retorna:
String com a versão da DLL em utilização.
Formatação
DWORD certex_getFormat( const BYTE nDocType, const LPTSTR lpDocUF, const LPTSTR lpDocNum, const DWORD wBufferLen, LPTSTR lpBuffer )
Parâmetros:
nDocType
,lpDocUF
elpDocNum
Ver certex_isValidwBufferLen
Quantidade de bytes disponíveis nolpBuffer
para escrever a máscara.lpBuffer
Buffer que recebe a máscara, se não nulo.Retorna:
A quantidade de caracteres necessários para escrever a máscara, sem contar o zero final. Se(wBufferLen > 0)
, escrevewBufferLen
caracteres da máscara emlpBuffer
.
nDocType
Buffer
certex_doc_type_CNPJ
##.###.###/####-##
certex_doc_type_CPF
#########.##
certex_doc_type_PIS
###.#####.##-#
certex_doc_type_TITULO
#########-##.##
certex_doc_type_IE
Depende da UF e, em alguns casos, do número certex_doc_type_CC
#### #### ####
...
DWORD certex_setFormat( const BYTE nDocType, const LPTSTR lpDocUF, const LPTSTR lpDocNum, const DWORD wBufferLen, LPTSTR lpBuffer )
Parâmetros:
nDocType
,lpDocUF
elpDocNum
Ver certex_isValidwBufferLen
Quantidade de bytes disponíveis nolpBuffer
para escrever o número formatado.lpBuffer
Buffer que recebe o número formatado, se não nulo.Retorna:
A quantidade de caracteres necessários para escrever o número formatado, sem contar o zero final. Se (wBufferLen >
certex_getFormat()), escreve o número formatado emlpBuffer
.Funções Derivadas (utilização de string)
- Delphi
function certex_format( const nDocType: byte; const lpDocUF, lpDocNum: pChar ): string;
- Visual Basic
Public Function certex_format(bytDocType As Byte, strDocUF As String, strDocNum As String) As String
Retorna:
Uma string com o número de documento formatado.
BYTE certex_getQntDigits( const BYTE nDocType, const LPTSTR lpDocUF, const LPTSTR lpDocNum )
Parâmetros:
nDocType
,lpDocUF
elpDocNum
Ver certex_isValidRetorna:
A quantidade de caracteres máximos esperados para o tipo de documento informado.
nDocType
Retorna
certex_doc_type_CNPJ
14 certex_doc_type_CPF
11 certex_doc_type_PIS
11 certex_doc_type_TITULO
13 certex_doc_type_IE
Depende da UF, em alguns casos, do número. (Se a UF não é informada, retorna o maior) certex_doc_type_CC
Máximo permitido
Auxiliares
DWORD certex_getUFName( const BYTE nUF, const INT iShort, LPTSTR lpBuffer )
Parâmetros:
nUF
Um número de 0 acertex_UF_Count-1
.iShort
Se(iShort = 0)
escreve a sigla da Unidade Federativa. Se não é igual a zero, escreve o nome por extenso.lpBuffer
Buffer que recebe a sigla o nome da Unidade Federativa.Retorna:
A quantidade de caracteres necessários para escrever o solicitado, sem contar o zero final. SelpBuffer
não é nulo, escreve a informação solicitada. O buffer deve ter espaço suficiente.Função Derivada (utilização de string)
- Delphi
function certex_ufName( const nUF: byte; const bShort: boolean ): string;
- Visual Basic
Public Function certex_format(bytUF As Byte, blnShortName As Boolean) As String
Retorna:
Uma string com a sigla ou nome por extenso da Unidade Federativa solicitada.
DWORD certex_getDocName( const BYTE nDocType, const DWORD wBufferLen, LPTSTR lpBuffer )
Parâmetros:
nDocType
Um número de 0 acertex_Doc_Type_Count-1
.
nDocType
lpBuffer
certex_doc_type_CNPJ
CNPJ certex_doc_type_CPF
CPF certex_doc_type_PIS
PIS certex_doc_type_TITULO
Título de Eleitor certex_doc_type_IE
Inscrição Estadual certex_doc_type_CC
Cartão de Crédito wBufferLen
Quantidade de caracteres disponíveis nolpBuffer
para escrever o nome do documento.lpBuffer
Buffer que recebe o nome do documento.Retorna:
A quantidade de caracteres necessários para escrever o nome do documento, sem contar o zero final. SelpBuffer
não é nulo, escreve o nome do documento atewBufferLen
caracteres.Função Derivada (utilização de string)
- Delphi
function certex_docName( const nDocType: byte ): string;
- Visual Basic
Public Function certex_docName(bytDocType As Byte) As String
Retorna:
Uma string com o nome do documento solicitado.