![]() |
|
Código-Fonte Software de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimentoDiga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais |
|
Você está aqui: Cards de |
||
|
||
|
|
||
PHP ::: Boletos Bancários, Arquivos de Remessa e Retornos do Banco ::: Caixa Econômica Federal - Banco 104 |
Boleto Bancário PHP - Como calcular o Dígito Verificador do Nosso Número (Módulo 11) - Boleto Caixa EconômicaQuantidade de visualizações: 3155 vezes |
|
Nesta dica mostrarei, passo-a-passo, como calcular o Dígito Verificador do Nosso Número para o boleto e arquivos de remessa da Caixa Econômica Federal (Banco 104). O Nosso Número é o número de identificação do título no Banco. Este número deve ser único nos seus sistemas, pois, sua combinação com o código do cedente o torno único também no sistema bancário. Além disso, é o Nosso Número que permite ao Banco e a empresa identificar os dados da cobrança que deram origem ao bloqueto. Na Especificação do Código de Barras para Bloquetos de Cobrança Sem Registro e Registrada no SIGCB (67.119 v005 micro), o Nosso Número é composto de 17 posições, sendo as 02 posições iniciais para identificar a Carteira e as 15 posições restantes são para livre utilização pelo Cedente. Seu formato é XYNNNNNNNNNNNNNNN-D, onde: a) X = Modalidade/Carteira de Cobrança (1-Registrada/2-Sem Registro); b) Y = Emissão do bloqueto (4-Cedente); c) NNNNNNNNNNNNNNN = Nosso Número (15 posições livres do Cedente); d) D = Dígito Verificador do Nosso Número calculado através do Modulo 11, conforme código que mostrarei a seguir. Nos boletos e arquivos de remessa da Caixa, o Dígito Verificador do Nosso Número admite 0 (zero), diferentemente do DV Geral do Código de Barras (que também mostro como calcular em dicas dessa seção). O cálculo que mostrarei a seguir é baseado no Módulo 11 e está de acordo com as instruções do Manual de Leiaute de Arquivo Eletrônico Padrão CNAB 240 - Cobrança Bancária Caixa - SIGCB - Versão 67.118 v024 micro e Especificação do Código de Barras para Bloquetos de Cobrança Sem Registro e Registrada no SIGCB (67.119 v005 micro). Tenha certeza de verificar sua versão do manual antes de usar o código apresentado. Dito isso, veja o código PHP completo para uma função que recebe o Nosso Número e retorna seu dígito verificador:
<?php
// função que recebe o nosso número
// e retorna o seu dígito verificador
function dvNossoNumero($nossoNumero){
// o nosso número possui mais que 17 dígitos?
if(strlen($nossoNumero) > 17){
die("O Nosso Número não pode ter mais que 17 dígitos.");
}
// agora vamos definir os índices de multiplicação
$indices = "29876543298765432";
// e aqui a soma da multiplicação coluna por coluna
$soma = 0;
// fazemos a multiplicação coluna por coluna agora
for($i = 0; $i < strlen($nossoNumero); $i++){
$soma = $soma + ((int)($nossoNumero[$i])) *
((int)($indices[$i]));
}
// obtemos o resto da divisão da soma por onze
$resto = $soma % 11;
// subtraímos onze pelo resto da divisão
$digito = 11 - $resto;
// atenção: Se o resultado da subtração for
// maior que 9 (nove), o dígito será 0 (zero)
if($digito > 9){
$digito = 0;
}
return $digito;
}
// vamos calcular o Dígito Verificador do
// Nosso Número
$carteira = "1"; //
$emissao = "4"; // cedente
$nossoNumero = "19";
// preenche com zeros até completar 15 posições
$nossoNumero = sprintf("%015d", $nossoNumero);
$nossoNumeroCompleto = $carteira . $emissao . $nossoNumero;
$digito = dvNossoNumero($nossoNumeroCompleto);
echo "O dígito verificador para o nosso número " .
$nossoNumeroCompleto . " é: " . $digito;
?>
Ao executar este código PHP nós teremos o seguinte resultado: O dígito verificador para o nosso número 14000000000028288 é: 5 |
VB.NET ::: Fundamentos da Linguagem ::: Estruturas de Controle |
Como usar a instrução Select...Case do VB.NETQuantidade de visualizações: 21137 vezes |
As instruções If...Then e If...Then...Else são muito úteis para testarmos condições em nossos códigos. Porém, há situações em que os caminhos a serem testados são tantos que se torna um pouco tedioso escrever tantos ElseIfs. Para estas situações nós temos a instrução Select...Case. Veja seu uso no trecho de código abaixo:
Dim valor As Integer = 7
Select Case valor
Case 1 To 5
Console.WriteLine("Entre 1 e 5 (inclusive)")
Case 6, 7, 8
Console.WriteLine("Entre 6 e 8 (inclusive)")
Case 9 To 10
Console.WriteLine("Igual a 9 ou 10")
Case Else
Console.WriteLine("Não encontrado no teste")
End Select
Os valores a serem testados em cada passo da instrução podem ser separados por vírgulas ou por faixa, usando a palavra-chave To. Neste último caso, o valor limite também é incluído no teste. O tipo de dados da variável de teste deve se enquadrar nos tipos: Boolean, Byte, Char, Date, Double, Decimal, Integer, Long, Object, SByte, Short, Single, String, UInteger, ULong e UShort. |
C# ::: C# + MySQL ::: MySqlCommand |
Como inserir dados em uma tabela MySQL usando INSERT INTO e consultas parametrizadas no C#Quantidade de visualizações: 1434 vezes |
|
As consultas parametrizadas podem ser definidas para o método ExecuteNonQuery() da classe MySqlCommand por meio dos métodos Add() e AddWithValue() do objeto Parameters. Neste exemplo eu mostrarei como usar AddWithValue(), já que ele nos permite informar tanto o parâmetro quanto o seu valor. Observe que a tabela usada nesta dica possui os campos id, titulo, autor, paginas e data_cadastro. O campo id é auto-incremento (recebendo o valor NULL) e o campo data_cadastro é do tipo DATETIME (e recebe o valor NOW()). Veja o código completo para o exemplo (incluindo a conexão C# + MySQL usando a classe MySqlConnection):
using System;
using System.Data;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace EstudosMySQL {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e) {
// objeto de conexão
MySqlConnection conn = null;
// string de conexão
string connStr = "server=localhost;user id=root; " +
"password=osmar1234; database=estudos; pooling=false";
try {
conn = new MySqlConnection(connStr);
conn.Open();
if (conn.State == ConnectionState.Open) {
// primeiro criamos um novo objeto MySqlCommand
MySqlCommand comando = new MySqlCommand();
// definimos a conexão para este comando
comando.Connection = conn;
// definimos o comando SQL a ser executado usando parâmetros
comando.CommandText = "INSERT INTO livros (id, titulo, autor, paginas, data_cadastro) " +
"VALUES(NULL, @titulo, @autor, @paginas, NOW())";
// agora definimos os valores para os parâmetros
comando.Parameters.AddWithValue("@titulo", "APLICAÇÕES PHP REST");
comando.Parameters.AddWithValue("@autor", "CARLOS JUNIOR SOUZA");
comando.Parameters.AddWithValue("@paginas", 280);
comando.Prepare();
// e executamos o comando SQL
int res = comando.ExecuteNonQuery();
if (res > 0) {
MessageBox.Show("Operação realizada com sucesso. " + res + " linhas afetadas.");
}
else {
MessageBox.Show("Deve ter acontecido alguma coisa. " + res + " linhas afetadas.");
}
}
}
catch (MySqlException ex) {
MessageBox.Show("Erro: " +
ex.Message);
}
}
}
}
|
PHP ::: Dicas & Truques ::: Gráficos e Cores |
Gráficos em PHP - Como verificar se a extensão GD está disponível na sua instalação do PHPQuantidade de visualizações: 10773 vezes |
|
Gráficos em PHP são gerados a partir da biblioteca (ou extensão) GD. É claro que você pode usar outras bibliotecas, mas esta é a mais comumente usada e disponível nas hospedagens compartilhadas. Antes de começar a gerar gráficos e imagens, porém, você precisa verificar se a GD está disponível no seu interpretador. A melhor forma de verificar isso é usar a página phpinfo() e procurar a seção "GD". Você deverá ter algo assim: GD Support enabled GD Version 2.0 or higher FreeType Support enabled FreeType Linkage with freetype JPG Support enabled PNG Support enabled WBMP Support enabled A partir da versão 4.3 do PHP, uma versão da GD (equivalente à GD 2.0 ou mais recente) já vem instalada por padrão. Isso dispensa a instalação da biblioteca. |
Python ::: Python para Engenharia ::: Geometria Analítica e Álgebra Linear |
Como calcular a transposta de uma matriz em Python - Python para Geometria Analítica e Álgebra LinearQuantidade de visualizações: 7536 vezes |
|
A matriz transposta de uma matriz A é a matriz AT. Tal matriz é obtida quando copiamos os elementos da matriz A para uma outra matriz (ou para ela mesma) e trocamos de posição as linhas e colunas. Dessa forma, a primeira linha da matriz A se transforma na primeira coluna da matriz transposta, a segunda linha da matriz A se transforma na segunda coluna da matriz transposta e assim por diante. Em termos de notação, podemos dizer, de forma algébrica, que: ATji = Aij Onde i representa as linhas e j representa as colunas, tanto na matriz original quanto na matriz transposta. É importante estar atento à quantidade de linhas e colunas na matriz original e na matriz transposta equivalente. Assim, se a matriz original for 3x2, a matriz transposta será 2x3. Antes de vermos o código Python, dê uma olhada na seguinte matriz de duas linhas e três colunas: \[A = \left[\begin{matrix} 3 & 5 & 7 \\ 1 & 2 & 9 \end{matrix}\right] \] Sua matriz transposta correspondente é: \[A^T = \left[\begin{matrix} 3 & 1 \\ 5 & 2 \\ 7 & 9 \end{matrix}\right] \] E agora veja o código Python que declara uma matriz 2x3 e gera a matriz transposta 3x2:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# como temos uma matriz 2x3, a transposta deverá ser
# 3x2, ou seja, três linhas e duas colunas
linhas = np.shape(matriz)[0] # linhas da matriz original
colunas = np.shape(matriz)[1] # colunas da matriz original
transposta = np.empty((colunas, linhas))
# e agora vamos preencher a matriz transposta
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
transposta[j][i] = matriz[i][j]
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado:
Elementos da matriz:
3 5 7
1 2 9
Elementos da matriz transposta:
3 1
5 2
7 9
É possível também obter a matriz transposta de um outra matriz usando o método transpose() da biblioteca NumPy da linguagem Python. Veja:
# importamos a bibliteca NumPy
import numpy as np
def main():
# vamos declarar e construir uma matrix
# 2x3 (duas linhas e três colunas
matriz = np.array([(3, 5, 7), (1, 2, 9)])
# vamos exibir os valores da matriz
print("Elementos da matriz:")
for i in range(np.shape(matriz)[0]):
for j in range(np.shape(matriz)[1]):
print("%7.2f" % matriz[i][j], end="")
print()
# vamos transpor a matriz usando o método transpose()
transposta = matriz.transpose()
# vamos exibir os valores da matriz transposta
print("\nElementos da matriz transposta:")
for i in range(np.shape(transposta)[0]):
for j in range(np.shape(transposta)[1]):
print("%7.2f" % transposta[i][j], end="")
print()
if __name__== "__main__":
main()
Ao executar este novo código Python veremos que o resultado é o mesmo. |
Desafios, Exercícios e Algoritmos Resolvidos de Python |
Veja mais Dicas e truques de Python |
Dicas e truques de outras linguagens |
|
VB.NET - Como retornar a versão do .NET a partir de seus códigos VB.NET usando Environment.Version.ToString() CSS - CSS3 - O que são CSS media queries e como usá-las em suas páginas web para criar designs responsivos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |






