Jump to content

Leaderboard


Popular Content

Showing most liked content since 05/03/2020 in all areas

  1. 1 point
    Dessa vez esta com banco de dados em SQL
  2. 1 point
    Gostaria de saber quais funções podem ser adicionadas a essa biblioteca Como trabalho em uma empresa multinacional e utilizamos muito Autoit aqui, desde 2008 se não me falha a memória, acabo que tendo que criar varias UDFs para atender a demandas específicas. Caso a biblioteca for de uso geral para area comercial, gostaria de implementar algumas funções que utilizo ou ja utilizei em ambito corporativo. Exemplo: Extrair informações, gerenciar objetos do Active Directory em massa Efetuar login na aplicação utilizando credenciais do Active Directory ou local Instalar softwares de forma automatizada, utilizando interface própria ou em modo silent Gerenciar infomações de banco de dados Aplicar correções do Windows Gerenciar informações do Registro e etc.
  3. 1 point
    Olá pessoal. Seguindo com as atualizações (v1.03) e novas funções (StringDifference e Trunc). StringDifference serve para mostrar a diferença entre 2 strings. O normal é usar os operadores = ou <> para saber se as strings são iguais ou não. Com esta, podemos ver também QUAL a diferença. STRINGDIFFERENCE("abc", "abcde") ; return "de" STRINGDIFFERENCE("123456", "246") ; return "135" STRINGDIFFERENCE("Segunda-feira", "Segunda") ; return "-feira" Trunc é uma função normal para trabalhar com números. Não tinha percebido que não existe naturalmente no AutoIt. Existem INT, ROUND, FLOOR e CEILING, todas com funções diferentes da TRUNC. Seguem as diferenças entre as demais citadas. TRUNC(1.238, 2) ; return 1.23 INT(1.238) ; return 1 FLOOR(1.238) ; return 1 CEILING(1.238) ; return 2 ROUND(1.238, 2) ; return 1.24 ROUND(1.238, 1) ; return 1.2 ROUND(1.238, 0) ; return 1 Arquivo principal no 1o post atualizado.
  4. 1 point
    @Luigi. Boa! Minha função anterior era na mesma linha, usando Regex também. Daí achei essa função interna do Windows que traz inclusive os separadores de milhar e de decimal de acordo com a linguagem do Windows. Achei mais interessante. Mas muito bom. Show de bola!
  5. 1 point
    @Manimal, acredito que fizemos funções similares em momentos diferentes, compartilho o meu código para aplicar ou formatar uma entrada numérica no formato de número real "000.000" com qualquer tipo de entrada, segue exemplo: https://github.com/chechelaky/AutoIt/tree/master/Diversos/Mask
  6. 1 point
    Ok, agora segue algumas funções de números: ; #FUNCTION# ==================================================================================================================== ; Name ..........: FATORIAL ; Description ...: Fatorial de um número ; Syntax ........: FATORIAL ($nNumero) ; Parameters ....: $nNumero - [Number] Nro para calcular o fatorial ; Return values .: Sucesso - [Number] Fatorial do nro ; Falha - [Number] 0 e seta @error ; Author ........: Manimal (visite Forum AutoIT Brasil - http://forum.autoitbrasil.com/) ; Example .......: FATORIAL(5) ; retorna 120 ; =============================================================================================================================== Func FATORIAL ($nNumero) If $nNumero <= 0 Then Return SetError(1, 0, 0) If $nNumero = 1 Then Return SetError(0, 0, 1) Return SetError(0, 0, $nNumero * FATORIAL($nNumero - 1)) EndFunc ;==>FATORIAL ; #FUNCTION# ==================================================================================================================== ; Name ..........: STRZERO ; Description ...: Completa com zeros à esquerda dos números ; Syntax ........: STRZERO ($nNumero, $nDigitos[, $nDecimais = 0]) ; Parameters ....: $nNumero - [Number] Nro a ser formatado ; $nDigitos - [Number] Quantidade de dígitos ; $nDecimais - [optional,Number] Quantidade de decimais. Default is 0. ; Return values .: Sucesso - [String] Nro formatado ; Author ........: Manimal (visite Forum AutoIT Brasil - http://forum.autoitbrasil.com/) ; Example .......: STRZERO(123, 5) ; retorna "00123" ; STRZERO(123, 7, 2) ; retorna "00123.00" ; Remarks .......: Quando informa as decimais o tamanho aumenta em 1 caracter por causa do ponto decimal ; =============================================================================================================================== Func STRZERO ($nNumero, $nDigitos, $nDecimais = 0) If $nDecimais = Default Then $nDecimais = 0 If $nDecimais > 0 Then $nDigitos += 1 Return SetError(0, 0, StringFormat("%0" & $nDigitos & "." & $nDecimais & "f", $nNumero)) EndFunc ;==>STRZERO ; #FUNCTION# ==================================================================================================================== ; Name ..........: NUMBERFORMAT ; Description ...: Formata um nro com separador de milhares e decimais ; Syntax ........: NUMBERFORMAT($nNumero[, $nDecimais = 2[, $bContabil = False[, $sSep_Decimal = $GsSep_Decimal[, $sSep_Milhar = $GsSep_Milhar]]]]) ; Parameters ....: $nNumero - [Number] Nro a ser formatado ; $nDecimais - [optional, Number] Quantidade de decimais. Default is 2. ; $nTamanho - [optional, Number] Tamanho da formatação. Default is 0 = tamanho que der ; $bContabil - [optional, Boolean] Se o valor NEGATIVO deve aparecer entre parentesis (padrão contábil) ; $sSep_Decimal - [optional, String] Separador de decimais. Default is "," para Brasil ; $sSep_Milhar - [optional, String] Separador de milhar. Default is "." para Brasil ; Return values .: Sucesso - [String] Nro formatado ; Author ........: Manimal (visite Forum AutoIT Brasil - http://forum.autoitbrasil.com/) ; Example .......: NUMBERFORMAT(12345, 0) ; retorna "12.345" ; NUMBERFORMAT(12345, 2) ; retorna "12.345,00" ; NUMBERFORMAT(-12345, 0) ; retorna "-12.345" ; NUMBERFORMAT(-12345, 2) ; retorna "-12.345,00" ; NUMBERFORMAT(12345, 0, 15) ; retorna " 12.345" ; NUMBERFORMAT(12345, 2, 15) ; retorna " 12.345,00" ; NUMBERFORMAT(-12345, 0, 15, True) ; retorna " (12.345)" ; NUMBERFORMAT(-12345, 2, 15, True) ; retorna " (12.345,00)" ; Remarks .......: Se for informado um tamanho E não couber o nro, retorna o nro independente do tamanho ; NUMBERFORMAT(12345, 2, 5) ; retorna "12.345,00" ; =============================================================================================================================== Func NUMBERFORMAT($nNumero, $nDecimais = 2, $nTamanho = 0, $bContabil = False, $sSep_Decimal = $GsSep_Decimal, $sSep_Milhar = $GsSep_Milhar) If $nDecimais = Default Then $nDecimais = 2 If $bContabil = Default Then $bContabil = False If $sSep_Decimal = Default Then $sSep_Decimal = $GsSep_Decimal If $sSep_Milhar = Default Then $sSep_Milhar = $GsSep_Milhar Local $sNumero = _WinAPI_GetNumberFormat($GnLCID, $nNumero, _WinAPI_CreateNumberFormatInfo($nDecimais, 0, 3, $sSep_Decimal, $sSep_Milhar, ($bContabil) ? 0 : 1)) If $nTamanho > 0 and $nTamanho > StringLen($sNumero) Then $sNumero = PADL($sNumero, $nTamanho) Return SetError(0, 0, $sNumero) EndFunc ;==>NUMBERFORMAT ; #FUNCTION# ==================================================================================================================== ; Name ..........: MONEYFORMAT ; Description ...: Formata um nro com separador de milhares e decimais e inclue o símbolo da moeda no começo, R$ para Brasil ; Syntax ........: MONEYFORMAT($nNumero[, $nDecimais = 2[, $bContabil = False[, $sSep_Decimal = $GsSep_Decimal[, $sSep_Milhar = $GsSep_Milhar]]]]) ; Parameters ....: $nNumero - [Number] Nro a ser formatado ; $nDecimais - [optional, Number] Quantidade de decimais. Default is 2. ; $nTamanho - [optional, Number] Tamanho da formatação. Default is 0 = tamanho que der ; $bContabil - [optional, Boolean] Se o valor NEGATIVO deve aparecer entre parentesis (padrão contábil) ; $sSep_Decimal - [optional, String] Separador de decimais. Default is "," para Brasil ; $sSep_Milhar - [optional, String] Separador de milhar. Default is "." para Brasil ; Return values .: Sucesso - [String] Nro formatado ; Author ........: Manimal (visite Forum AutoIT Brasil - http://forum.autoitbrasil.com/) ; Example .......: MONEYFORMAT(12345, 0) ; retorna "R$ 12.345" ; MONEYFORMAT(12345, 2) ; retorna "R$ 12.345,00" ; MONEYFORMAT(-12345, 0) ; retorna "R$ -12.345" ; MONEYFORMAT(-12345, 2) ; retorna "R$ -12.345,00" ; MONEYFORMAT(12345, 0, 15) ; retorna "R$ 12.345" ; MONEYFORMAT(12345, 2, 15) ; retorna "R$ 12.345,00" ; MONEYFORMAT(-12345, 0, 15, True) ; retorna "R$ (12.345)" ; MONEYFORMAT(-12345, 2, 15, True) ; retorna "R$ (12.345,00)" ; Remarks .......: Se for informado um tamanho E não couber o nro mais o símbolo da moeda, retorna a moeda com o nro independente do tamanho ; MONEYFORMAT(12345, 2, 5) ; retorna "R$ 12.345,00" ; =============================================================================================================================== Func MONEYFORMAT($nNumero, $nDecimais = 2, $nTamanho = 0, $bContabil = False, $sSep_Decimal = $GsSep_Decimal, $sSep_Milhar = $GsSep_Milhar) Local $sNumero = NUMBERFORMAT($nNumero, $nDecimais, $nTamanho, $bContabil, $sSep_Decimal, $sSep_Milhar) If $nTamanho = 0 Then Return SetError(0, 0, $GsMoeda & " " & $sNumero) If not StringRegExp($sNumero, "^ {" & StringLen($GsMoeda) + 1 & "}") Then Return SetError(0, 1, $GsMoeda & " " & $sNumero) Return SetError(0, 0, StringRegExpReplace($sNumero, "^ {" & StringLen($GsMoeda) + 1 & "}(.+)$", $GsMoeda & " $1")) EndFunc ;==>MONEYFORMAT
  7. 1 point
    @Luigi. Com certeza que não sou "purista", nem tem como ser atualmente... :lol: Vou abrir um repositório no GitHub e depois deixo o link aqui. Obrigado pela sugestão. @mutleey Qualquer ajuda é bem-vinda, qualquer dúvida, comentário ou crítica construtiva ajuda no processo. Só que precisamos que mais pessoas façam parte... @todos Sendo assim, estou trabalhando em mais algumas funções de números e preciso que alguém se comprometa a desenvolver uma rotina de número por extenso. Alguém se habilita? Não existe errado aqui galera... Só ideias e melhorias...
  8. 1 point
    eu pretendo ajudar com o que puder (dentro do meu minimo conhecimento) mais achei a idéia excelente!!!
  9. 1 point
    @Manimal, sobre o uso do github, acredito que: * é uma nova forma de compartilhar código (não sejamos "puristas" em achar que somente um fórum, no caso o nosso é a única forma de compartilhar código) * uma hora talvez esse forum acabe, e com ele todo o conhecimento, e talvez o github esteja lá (até a Microsoft esta lá) * sua ideia é ótima, e merece visibilidade universal, acho que um forum limita um pouco essa visibilidade, afinal de contas, quem quiser fazer o download e não dar feedback algum, vai fazer isso no forum, no github, em qualquer lugar... quem quiser acrescentar, vai fazer o que for preciso e irá somar *quanto usar o github ser mais complicado, sim, parece, até eu tenho um pouco de dificuldade em entender o conceito de brunchs, mas as grandes ideias nas grandes empresas utilizam esta receita, temos que estudar e assimilar * eu não sou fã de código compartilhado em mediafire ou aquelas paginas que fazem voce esperar 1 minuto e ficam te mostrando propaganda enquanto vc espera, da uma sensacao ruim Mas, é apenas a minha forma de ver, independente do formato que vocé escolher, eu vou ajudar no que for possivel.
  10. 1 point
    Olá Luigi. Com certeza que usar o Github facilitaria as coisas, mas acho que sairia do escopo do fórum não? Nem todos aqui tem acesso ou sabem (ou saberiam) usar o GitHub, só por isso...
  11. 1 point
    Capítulo 01 - O que é uma Janela? Capítulo 02 - Criando sua 1ª Janela. Capítulo 03 - Entendendo as Classes de Janela. Continua em breve... Equipe AutoIt Brasil
×