sexta-feira, 29 de julho de 2011

Oracle Functions - Concat

Olá,

A função CONCAT é utilizada para retornar duas strings concatenadas

Sintaxe:
concat( char, char )

Exemplo:
select concat('abc', '123') from dual;

Até,

quinta-feira, 28 de julho de 2011

Oracle Functions - Chr

Olá,

A função CHR é utilizada para retornar o caracter representado pelo número de acordo com o character set do banco de dados

Sintaxe:
chr( numero )

Exemplo:
select chr(65) from dual;

Até,

quarta-feira, 27 de julho de 2011

Oracle Functions - WIDTH_BUCKET

Olá,

A função width_bucket é utilizada para a criação de histrogramas, onde as faixas são divididas em intervalos dos mesmos valores

terça-feira, 26 de julho de 2011

Oracle Functions - TRUNC

Olá,

A função trunc retorna o valor truncado no número de casas decimais informadas, se não forem informadas casas decimais o valor é truncado para o inteiro mais próximo

segunda-feira, 25 de julho de 2011

domingo, 24 de julho de 2011

sábado, 23 de julho de 2011

sexta-feira, 22 de julho de 2011

Oracle Functions - SINH

Olá,

A função sinh retorna o valor do seno hiperbolico de um determinado numero

quinta-feira, 21 de julho de 2011

quarta-feira, 20 de julho de 2011

Oracle Functions - SIGN

Olá,

A função sign retorna -1 se o numero é negativo, 0 se for zero e 1 se o numero for positivo

terça-feira, 19 de julho de 2011

Oracle Functions - ROUND

Olá,

A função round retorna o valor passado arrendodado de acordo com o numero de casa informados

segunda-feira, 18 de julho de 2011

Oracle Functions - REMAINDER

Olá,

A função remainder é semelhante ao mod, com a a diferença é que o mod usa o floor no calculo do resultado e o remainder usa o round

domingo, 17 de julho de 2011

sábado, 16 de julho de 2011

Oracle Functions - NANVL

Olá,

A função nanvl é util nos casos que utilizarmos NaN (Not a number) em tipos BINARY_FLOAT ou BINARY_DOUBLE, a função vai retornar "retorno" quando for encontrado um valor NaN

sexta-feira, 15 de julho de 2011

quinta-feira, 14 de julho de 2011

Oracle Functions - LOG

Olá,

A função log retorna o logaritimo de base "base" do numero informado

Android App Inventor - Sensores - GPS (LocationSensor)

Olá,

Este componente é utilizado para obter os dados de posicionamento através do GPS do celular, ou da localização das torres de celulares

quarta-feira, 13 de julho de 2011

Oracle Functions - LN

Olá,

A função ln retorna o logaritimo natural do argumento, que deve ser maior que 0

Android App Inventor - Sensores - Acelerometro (AccelerometerSensor)

Olá,

Este componente utiliza o acelerometro para detectar movimentos do telefone, por exemplo, quando ele é jogado ou está em queda

terça-feira, 12 de julho de 2011

Oracle Functions - FLOOR

Olá,

A função ceil faz o arredondamento para o menor numero inteiro ou igual ao argumento passado (arredonda "pra baixo")

Android App Inventor - Componentes de Interação Social - Twitter

Olá,

Este componente é utilizado para fazer a interação da sua aplicaçãoc om o Twitter

domingo, 10 de julho de 2011

sexta-feira, 8 de julho de 2011

Oracle Functions - CEIL

Olá,

A função ceil faz o arredondamento para o maior numero inteiro ou igual ao argumento passado (arredonda "pra cima")

Android App Inventor - Componentes de Interação Social - EmailPicker

Olá,

Este componente permite que um usuário selecione o email de um contato que está em sua lista

quinta-feira, 7 de julho de 2011

Oracle Functions - BITAND

Olá,

A função bitand faz uma operação and entre os bits dos dois argumentos passados

Android App Inventor - Componentes de Interação Social - ContactPicker

Olá,

Este componente é utilizado para permitir que o usuário selecione um contato a partir da sua aplicação

terça-feira, 5 de julho de 2011

Oracle Functions - ASIN

Olá,

A função asin retona o acor-seno de um determinado número

Android App inventor - Componentes de Animação - Ball

Olá,

O componente ball é um tipo de sprite especial a diferença entre ele e um sprite comum é que o comum é baseado em uma imagem, enquanto o ball é um sempre um circulo

domingo, 3 de julho de 2011

sábado, 2 de julho de 2011

Android App inventor - Componentes de mídia - Player

Olá,

O componente player é utilizado para executar um arquivo de audio ou video ou ainda para vibrar o telefone

Oracle - Índices sobre funções

Olá,

Quando é aplicada um função sobre uma coluna, perdemos o índice, pois nesse caso o valor da tabela será diferente do valor que está armazenado no indice, para os casos em que utilizamos frequentemente uma função sobre determinada coluna podemos criar um indice baseado em uma função

sexta-feira, 1 de julho de 2011

Android App inventor - Componentes de mídia - ImagePicker

Olá,

Este componente é utilizado para selecionar uma imagem da galeria de imagens

Oracle - Índices compostos

Olá,

Quando um índice tem mais de uma coluna ele é chamado de indice composto, para o Oracle fazer o acesso ao indice composto é necessário utilizar pelo menos a primeira coluna do indice na where clause

Exceptions pré-definidas - ORA-01476 ZERO_DIVIDE

Olá,
Esta exception ocorre quando é feita uma tentativa de dividir um valor por zero, é mais um dos casos que parecem simples de resolver, porém às vezes temos muitas contas que são jogadas de variáveis para variáveis e é onde costuma dar esse erro, nesse caso, aconselho verificar as variaveis que estão dividindo os números
Código do erro ORA-01476
Até,

quinta-feira, 30 de junho de 2011

Android App inventor - Componentes de mídia - Camera

Olá,

Este componente é utilizado para tirar fotos com o telefone

Oracle - DBA_IND_COLUMNS e USER_IND_COLUMNS

Olá,

Para obter os detalhes das colunas que compõe o índice utilizamos as visões (view)

Exceptions pré-definidas - ORA-06502 VALUE_ERROR

Olá,
Esta exception ocorre quando ocorre um erro em uma restrição de conta, conversão, trunc ou tamanho, por exemplo, no caso de tentar fazer um select into em um varchar2 sem ter o tamanho definido
Código do erro ORA-06502
Até,

quarta-feira, 29 de junho de 2011

Android App Inventor - Componentes Básicos - TinyDB

Olá,

O TinyDB é um componente utilizado para armazenar dados, mesmo após a finalização do aplicativo

Oracle - DBA_INDEXES e USER_INDEXES

Olá,

Para saber informações sobre os indexes existentes em uma tabela do banco de dados Oracle utilizamos as visões (views)

Exceptions pré-definidas - ORA-00051 TIMEOUT_ON_RESOURCE

Olá,

Esta exception ocorre quando o tempo de espera por uma resposta é atingido, nesse caso, verifique se o banco e a rede estão ok

Código do erro ORA-00051

Até,

terça-feira, 28 de junho de 2011

Android App Inventor - Componentes Básicos - TextBox

Olá,

Este componente é utilizado quando queremos que o usuário digite algum texto para o programa

Oracle - Um pouco sobre índices

Olá,

Para encontrar valores em uma tabela, o Oracle tem duas opções, procurar as informações linha a linha, também conhecido com acesso full (acesso completo à tabela), ou acessar um linha direto pelo seu rowid

Exceptions pré-definidas - ORA-01410 SYS_INVALID_ROWID

Olá,
Esta exception ocorre quando é feita uma tentativa de converter uma string para um rowid que não existe, nesse caso, verifique a string informada
Código do erro ORA-01410
Até,

segunda-feira, 27 de junho de 2011

Android App Inventor - Componentes Básicos - PasswordTextBox

Olá,

Este componente utilizado quando é preciso coletar a senha do usuário

Oracle - Rowid

Olá,

O Rowid é uma estrutura utilizada para identificar uma linha única dentro do banco de dados, é possível declarar uma coluna com o tipo rowid, porém isso não é recomendável pois a cada versão a estrutura do rowid pode ser alterada e durante uma operação de import/export o valor do rowid poderá tornar-se inválido

Até,

Exceptions pré-definidas - ORA-06532 SUBSCRIPT_OUTSIDE_LIMIT

Olá,
Esta exception ocorre quando é feita uma referência à uma nested table ou à um varray usando um indice fora da faixa permitida, nesse caso, verifique o indice informado
Código do erro ORA-06532
Até,

domingo, 26 de junho de 2011

Android App Inventor - Componentes Básicos - Tela (Screen)

Olá,

O componente Tela (Screen) não aparece na paleta de componentes como os outros componentes, ele é criado automaticamente, cada projeto te uma screen chamada Screen1, seu nome não pode ser modificado

Exceptions pré-definidas - ORA-06533 SUBSCRIPT_BEYOND_COUNT

Olá,

Esta exception ocorre quando é feita uma referência à uma nested table ou à um varray usando um indice maior do que o número de elementos na collection, nesse caso, verifique o indice informado

Código do erro ORA-06533

Até,

sábado, 25 de junho de 2011

Android App Inventor - Componentes Básicos - ListPicker

Olá,

Um listpicker é utilizado para permitir que o usuário selecione um item dentro de uma lista de opções

Exceptions pré-definidas - ORA-06500 STORAGE_ERROR

Olá,
Esta exception ocorre quando um PL/SQL está com problemas para alocar memória, nesse caso o problema pode ser tanto de software, quanto do hardware, veja como está a quantidade de shared memory
Código do erro ORA-06500
Até,

sexta-feira, 24 de junho de 2011

Android App Inventor - Componentes Básicos - Label

Olá,

O componente label é utilizado para exibir mensagens de texto para o usuário

Exceptions pré-definidas - ORA-30625 SELF_IS_NULL

Olá,

Esta exception ocorre quando um programa tenta chamar uma função MEMBER com o objeto null ou não inicializado, nesse caso, inicialze o objeto

Código do erro ORA-30625

Até,

quinta-feira, 23 de junho de 2011

Android App Inventor - Componentes Básicos - Imagem (Image)

Olá,

O componente imagem é utilizado para representar imagens que o usuário pode selecionar e manipular

Exceptions pré-definidas - ORA-06504 ROWTYPE_MISMATCH

Olá,

Esta exception ocorre quando a variável onde é feito o fetch do cursor é diferente da linha retornada, nesse caso, verifique o tipo da variável de retorno

Código do erro ORA-06504

Até,

quarta-feira, 22 de junho de 2011

Android App Inventor - Componentes Básicos - Relógio (Clock)

Olá,

O componente relógio é utilizado quando precisamos de um temporizador para o nosso aplicativo, ou quando precisamos fazer conversões e manipulações de data e hora

Exceptions pré-definidas - ORA-06501 PROGRAM_ERROR

Olá,
Esta exception ocorre quando o PL/SQL encontrou um erro interno, nesse caso, contate o dba, provavelmente você estará com sérios problemas no banco de dados
Código do erro ORA-06501
Até,

terça-feira, 21 de junho de 2011

Android App Inventor - Componentes Básicos - CheckBox

Olá,
O checkbox é um componente que pode armazenar dois estados, marcado ou não

Exceptions pré-definidas - ORA-01012 NOT_LOGGED_ON

Olá,

Esta exception ocorre quando um programa tenta fazer uma chamada e não está logado no banco, já vi acontecer no sql*plus isso quando a conexão é perdida, deixei uma sessão muito tempo aberta e quando fui fazer um select, retornou esse erro, nesse caso é só fazer o logon novamente

Código do erro ORA-01012

Até,

Oracle - Operadores de conjuntos - Minus

Olá,


O Operador de conjunto (Set Operators) Minus, serve para retornar uma lista de linhas que estão na primeria query, mas não estão na segunda query

Até,

segunda-feira, 20 de junho de 2011

Android App Inventor - Componentes Básicos - Canvas

Olá,

Um canvas é uma área sensivel ao toque onde é possível desenhar e mover imagens

Exceptions pré-definidas - ORA-01017 LOGIN_DENIED

Olá,
Esta exception ocorre quando um programa tenta fazer login no Oracle com um usuário e/ou senha inválidos, nesse caso, verifique o usuário e a senha informados
Código do erro ORA-01017
Até,

Oracle - Operadores de conjuntos - Intersect

Olá,


O Operador de conjunto (Set Operators) Intersect, serve para retornar uma lista de linhas que estão nas duas queries, eliminado as linhas duplicadas (distinct)

Até,

domingo, 19 de junho de 2011

Android App Inventor - Componentes Básicos - Botão (Button)

Olá,

O primeiro componente do qual iremos falar é o botão (button), que talves seja um dos componentes mais utilizados pelos programadores

Exceptions pré-definidas - ORA-01722 INVALID_NUMBER

Olá,
Esta exception ocorre quando é feita uma tentativa de converter um caracter para número não válido, nesse caso veja se o valor que está sendo convertido é mesmo um número, verifique se não existem espações em branco
Código do erro
Até,

Oracle - Operadores de conjuntos - Union All

Olá,


O Operador de conjunto (Set Operators) Union All, serve para agrupar as linhas de duas queries em uma só, sem eliminar as linhas duplicadas

Até,

sábado, 18 de junho de 2011

Android App Inventor - Componentes

Olá,


Hoje vou começar a falar um pouco mais sobre o App Inventor do Android, vou começar pelos componentes, que tem seus métodos, eventos e propriedades, eles estão divididos nos seguintes grupos:

Exceptions pré-definidas - ORA-01001 INVALID_CURSOR

Olá,


Esta exception ocorre quando um programa tenta fazer alguma operação não permitida em um cursor, por exemplo, fechar um cursor fechado, ou também pelo valor configurado para MAXOPENCURSORS, nesse caso, se for por causa de um cursor fechado, vale a outra dica para cursor, senão, se for po causa do MAXOPENCURSORS, converse com o seu dba

Código do erro ORA-01001 ( segundo a documentação da Oracle, o erroORA-01001 não existe no 10g )

Até,

Oracle - Operadores de conjuntos - Union

Olá,

O Operador de conjunto (Set Operator) Union, serve para agrupar as linhas de duas queries em uma só, eliminado as linhas duplicadas (distinct)

Até,

sexta-feira, 17 de junho de 2011

Exceptions pré-definidas - ORA-00001 DUP_VAL_ON_INDEX

Olá,
Esta exception ocorre quando é feita uma tentativa de duplicar um valor de um indice único em uma tabela, nesse caso, verifique se o indice deve ser unique mesmo, ou veja o valor que está sendo inserido
Código do erro ORA-00001
Até,

Oracle - Operadores de conjuntos

Olá,

Os operadores de conjuntos servem para combinar os resultados de duas queries em um único resultado,

quinta-feira, 16 de junho de 2011

Exceptions pré-definidas - ORA-06511 CURSOR_ALREADY_OPEN

Olá,


Esta exception ocorre quando o cursor que se está tentando abrir já está aberto, neste caso, feche o cursor antes de abrir, pode parecer um erro simples, mas às vezes temos uma abertura de cursor dentro de um loop, e é onde fica um difícil pegar o erro, pois nesse caso, o erro às vezes aparece e às vezes não

Código do erro 

Até,

quarta-feira, 15 de junho de 2011

Exceptions pré-definidas - ORA-06531 COLLECTION_IS_NULL

Olá,


Esta exception ocorre quando é feita uma tentativa de referenciar uma nested table ou uma collection que precisa ser inicializada, sem que a collection tenha sido inicializada, neste caso, deve-se inicializar a variável com o construtor apropriado

Código do erro ORA-06531

Até,

C# - Obter os arquivos de um diretório

Olá,

Para fazer uma listagem de todos os arquivo que estão em um diretório, basta chamar a função System.IO.Directory.GetFiles, no exemplo abaixo, adiciono todos os arquivos *.exe à um listbox chamado listBox1

foreach (string a in System.IO.Directory.GetFiles(@"C:\diretorio", "*.exe"))

{
listBox1.Items.Add(a);
}

Até,

terça-feira, 14 de junho de 2011

Exceptions pré-definidas - ORA-06592 CASE_NOT_FOUND

Olá,


Esta exception ocorre quando quando nenhum case satisfaz a condição e não existe um else. Um comando case deve contemplar todos as condições possíveis ou deve ter um else, neste caso, incluir todos os cases possíveis ou incluir um else

Código do erro ORA-06592

Até,

Mensagem de erro no Oracle

Olá,

O código abaixo serve para exibir a mensagem de erro relacionada ao código informado, o código abaixo deve ser executado no SQL*Plus

ACCEPT erro number PROMPT 'Codigo do Erro: '

VAR mensagem VARCHAR2(256)
execute :mensagem := SQLERRM(-&erro);
PRINT mensagem
 
Até,

segunda-feira, 13 de junho de 2011

App inventor for Android

Olá,


Resolvi instalalar o App inventor for Android na minha máquina pra fazer alguns testes, achei que ia ser um parto, mas até que foi tranquilo, quase igual a instalação de um produto Microsoft, NNF (Next, Next, Finish)
Pois é, como eu disse.. quase...

Exceptions pré-definidas - ORA-06530 ACCESS_INTO_NULL

Olá,

Esta exception ocorre quando se tenta acessar o valor de uma variável que não foi inicializada, por exemplo, um LOB, neste caso, deve-se inicializar a variável com o construtor apropriado

Código do erro ORA-06530

Até,

domingo, 12 de junho de 2011

Exceptions pré-definidas - ORA-01422 TOO_MANY_ROWS

Olá,


Esta exception ocorre quando um select into retorna mais de uma linha, nesse caso, verifique se foi feito um select por uma chave primária, ou de outro modo que seja garantido que retorno somente uma linha

Código do erro ORA-01422

Até,

sábado, 11 de junho de 2011

Incluindo seu site em mecanismos de pesquisa

Olá,

Para incluir o seu site nos mecanismos de basta entrar nos links abaixo e fazer o cadastro, lembrando, é claro, que para ter um bom posicionamento nos resultados nos mecanismos de busca, é necessário fazer um trabalho de SEO ( Search Engine Optimization ), estou estudando um pouco sobre isso, assim que for levantando informações, irei postando para vocês

http://www.google.com.br/intl/pt-BR/add_url.html

http://siteexplorer.search.yahoo.com/submit
http://www.bing.com/webmaster/SubmitSitePage.aspx

Até,

Exceptions pré-definidas - ORA-01403 NO_DATA_FOUND

Olá,


Esta exception ocorre quando não são encontrados registros em um select into, acho que essa é a exception que eu mais uso no dia-a-dia..rs, nesse caso normalmente o tratamento depende mais da regra de negócio, se deveria ou não ter retornado linhas no select

Código do erro ORA-01403

Até,

sexta-feira, 10 de junho de 2011

Exceptions pré-definidas do Oracle

Olá,

Hoje estou postando a lista de exceptions pré-definidas do Oracle, como é sexta-feira, vai só a lista mesmo, mas em outras postagens, prometo detalhar melhor cada uma delas

ACCESS_INTO_NULL
CASE_NOT_FOUND
COLLECTION_IS_NULL
CURSOR_ALREADY_OPEN
DUP_VAL_ON_INDEX
INVALID_CURSOR
INVALID_NUMBER
LOGIN_DENIED
NO_DATA_FOUND
NOT_LOGGED_ON
PROGRAM_ERROR
ROWTYPE_MISMATCH
SELF_IS_NULL
STORAGE_ERROR
SUBSCRIPT_BEYOND_COUNT
SUBSCRIPT_OUTSIDE_LIMIT
SYS_INVALID_ROWID
TIMEOUT_ON_RESOURCE
TOO_MANY_ROWS
VALUE_ERROR
ZERO_DIVIDE

Até,

quinta-feira, 9 de junho de 2011

Cursor for loop no Oracle

Olá,

Estou postando um exemplo de um cursor for loop no pl/sql (Oracle), No exemplo, estou declarando uma variável x, que é a representação do registro atual do cursor, para acessar um campo, é só fazer x.campo

for x in ( select campo1, campo2 from tabela ) loop
   dbms_output.put_line( x.campo1 );
end loop;


Até,

quarta-feira, 8 de junho de 2011

C# - Enviar email usando System.Net.Mail

Olá,

Hoje estou postando uma forma de mandar email simples e rápida pelo C#, só não se esqueçam de trocar as informações pelas suas informações (e por favor, não deixe nada chapado no código, isso é só um exemplo...)

E também não esquecer de incluir a referência abaixo também...

using System.Net.Mail;

MailMessage mensagem = new MailMessage("emailDE@email.com", "emailPara@email.com", "Titulo", "Corpo do email");

SmtpClient clienteSMTP = new SmtpClient();
clienteSMTP.Host = "servidorSMTP";
clienteSMTP.Credentials = new System.Net.NetworkCredential("usuarioServidorSMTP", "SenhaServidorSMTP");
clienteSMTP.EnableSsl = true;
clienteSMTP.Send(mensagem);


Até,

terça-feira, 7 de junho de 2011

Sharepoint 2010 - Criar site via código

Olá,

Hoje vou postar um trecho de código para a criação de um site através de programação..


SPWeb minhaWeb = SPContext.Current.Web;
SPWeb novaWeb = null;
novaWeb = minhaWeb.Webs.Add( "novoSite", "Meu Site", "Site de Teste", 1033, "STS#1", true, false);


Até,

segunda-feira, 6 de junho de 2011

Sharepoint - Sandboxed solutions

Olá,

Hoje vou falar um pouco sobre sandboxed solutions, que são soluções que são instaladas em um ambiente separado, ou seja, essas soluções só podem executar e consumir recursos limitados, evitando que alguma solução mal escrita possa comprometer o servidor inteiro.

Essas soluções rodam no processo SPUCWorkerProcess.exe, protegendo o Sharepoint, os processos e os serviços do Windows

O acesso a recursos do Sharepoint é limitado e são definidos "pontos" pelo administrador, que são calculados de acordo com 14 metricas do Sharepoint, que estão listadas abaixo:

AbnormalProcessTerminationCount
CPUExecutionTime
CriticalExceptionCount
InvocationCount
PercentProcessorTime
ProcessCPUCycles
ProcessHandleCount
ProcessIOBytes
ProcessThreadCount
ProcessVirtualBytes
SharePointDatabaseQueryCount
SharePointDatabaseQueryTime
UnhandledExceptionCount
UnresponsiveprocessCount

Para dar um exemplo, 20 queries são iguais a 1 ponto do Sharepoint e 120 segundos de execução são equivalentes a 1 ponto

Para definir a quantidade de pontos que podem ser consumidas no dia, siga os passos abaixo:

1) Acesso o Central Admin

2) Clique em ApplicationManagement

3) Clique em Configure quotas and locks

4) Selecione o Site Collection que você quer administrar

5)Na seção Site Quota Information, defina a quantidade de pontos no campo Maximum usage per day

Pronto, agora quando um aplicativo ultrapassar o limite definido, ele só voltará a funcionar no dia seguinte

Até,

quinta-feira, 2 de junho de 2011

O que é ADSI (Active Directory Service Interfaces)?

Olá,

Às vezes precisamos desenvolver algum sistema que faz integração com o AD (Active directory). Para esses casos, a Microsoft disponibiliza o ADSI (Active Directory Sevice Interfaces) que é um conjunto de comandos para fazer acesso às informações contidas no diretório, em breve vou postar alguns exemplos de códigos fontes que utilizam ADSI

Até,

quarta-feira, 1 de junho de 2011

Básico de chassi

Olá,


Estava precisando extrair alguns dados de chassi hoje, bom, achei um blog que fala um pouco sobre isso, que estou postando abaixo, preciso de mais informações, vou pesquisar e assim que for encontrando vou postando aqui...


http://codvin.blogspot.com/

Até,

segunda-feira, 30 de maio de 2011

Decode do Oracle no SQL Server

Olá,

No Oracle, quando precisamos fazer um if no select usamos o comando decode, como no exemplo abaixo:

select decode( campo, valor1, retorno1, retornoelse) from tabela

Como podemos fazer isso no SQL Server? Bom, SQL Server, devemos utilizar o case, veja o select abaixo:

Select case campo when valor1 then retorno1 else retornoelse end as colunaIIf from tabela

Até,

sábado, 28 de maio de 2011

Equivalente ao Top do SQL Server no Oracle

Olá,

Continuando com as equivalencias entre Orace e SQL Server, me pediram pra falar sobre como fazer um top no Oracle...

Bom vamos lá, no SQL Server, quando precisamos pegar um determindado numero de linhas, usamos o top, por exemplo, vou pegar duas linhas no select abaixo

select top 2 * from tabela

No Oracle, limitamos o rownum no where

select * from tabela where rownum <=2


Até,

quinta-feira, 26 de maio de 2011

NVL do Oracle no SQL Server

Olá,

No Oracle quando precisamos testar se o conteúdo de uma coluna é null utilizamos a função nvl, da seguinte forma

select nvl(coluna, 'valornull') from tabela

Hoje me perguntaram como fazer isso no SQL Server, bom o SQL Server também tem a sua 'versão do nvl' que é a função isnull

select isnull(coluna, 'valornull) from tabela

É bem simples, porém sempre é bom dar uma relembrada, em breve vou colocar mais exemplos de equivalencia de funções entre o Oracle e SQL Server

Até,

quarta-feira, 25 de maio de 2011

Oracle Connect By Prior (Pra que serve?)

Olá,

Hoje vou falar sobre um recurso muito bacana e que às vezes não é explorado pelos programadores Oracle, esse recurso é o connect by prior.

O connect by prior serve para montar uma query com uma árvore recursiva, muito devem estar se perguntando, mas qual a utilidade disso?

A utilidade é quando temos, por exemplo, que listar qual funcionario está abaixo de quem.. Vou por um exemplo de código que acho que fica mais claro...

Primeiro vou criar uma tabela de funcionarios...

create table funcionarios( cod_funcionario NUMBER not null, cod_superior NUMBER, nome VARCHAR2(20) )

Crio a PK

alter table funcionarios constraint PK_funcionarios primary key (cod_funcionario)

E a FK informando que um superior é um funcionario

alter table funcionarios add constraint FK_funcionarios foreign key (cod_superior) references funcionarios (cod_funcionario)

Agora vamos ao select...

select cod_funcionario, cod_superior, level, nome
from funcionarios
start with cod_superior is null
connect by prior cod_funcionario = cod_superior
order by level

Esse select retorna todos os funcionarios da empresa, do presidente ( que não tem superior ) até os funcionarios que não tem subordinados... Não esquecer de fazer o insert na tabela, lembrando que no nosso caso, pelo menos um funcionário, não deve ter superior

Essa funcionalidade já me quebrou vários galhos..rs, principalmente na criação de menus no Oracle Forms e nos controles de acessos

E o melhor de tudo, é grátis...rs.. Bom, na verdade ele vem com o Oracle, que não é de graça ...rs

Até,

terça-feira, 24 de maio de 2011

Dicas para instalar o Sharepoint

Olá,

A instalação do Sharepoint costuma ser bem tranquila, normalmente é NNF ( Next, Next e Finish ), porém, deixo abaixo uma lista de passos que acredito que devem ser seguidos para evitar maiores problemas:

1) Executar os pré-requisitos

2) Instalar o Sharepoint

3) Utilizar o Wizard para configurar o Sharepoint

4) Utilizar o Wizard para configurar a Farm

Alguns itens para incluir no check-list:

1) Definir os usuários e senhas para as contas abaixo, o ideal é utilizar um usuário para cada conta, assim podemos organizar de melhor forma os acessos de cada usuário:

a) SP_Admin
b) SP_Farm
c) SP_Service
d) SP_Crawl

2) Configurações do banco de dados SQL Server ( bom, nem precisava dizer que é o SQL Server, ou será que alguém quer instalar o Sharepoint no Oracle? )

a) Nome do servidor
b) Nome da instância
c) Nome do banco de configuração do Sharepoint: SharePoint_Config

3) Número da porta TCP para o site Central Admin

4) Passpharse da Farm ( ela será utilizada para permitir que algumas pessoas possam fazer alterações no Sharepoint, sem conhecer a senho do SP_Admin )

5) Product key da instalação do SharePoint

Para os casos onde iremos fazer várias instalações, é possível automatizar a instalação dos pré-requisitos, a instalação do Sharepoint e a configuração da Farm, isso é muito útil para quem presta consultoria e precisa fazer uma instalação, mais ou menos padrão em vários clientes


Até,

segunda-feira, 23 de maio de 2011

Visão Geral do Sharepoint

Olá,

O Sharepoint pra quem não conhece ainda é a plataforma de colaboração empresarial da Microsoft, ele é um "Facebook" (entre aspas) para empresas, claro que ele não foi feito para postar fotos e nem o que fizemos no final de semana... Até podemos fazer, mas acho que o diretor de TI da empresa não vai gostar de saber que gastou dinheiro em um software pra isso..rs

Com o Sharepoint é possível que grupos compartilhem documentos de projetos, inclusive com edição via web no caso do Sharepoint 2010, a idéia principal é que ele seja um centro de compartilhamento de informações e arquivos ( não só isso, claro ) com ele também podemos nos conectar ao active directory, desenvolver aplicações baseadas em bancos de dados e muito mais, em breve falaremos mais sobre essa tecnologia bem legal da Microsoft


Até,

quinta-feira, 19 de maio de 2011

Instalando o SharePoint 2010 no Windows 7

Olá,

Boas noticía, tinha dito que era necessário ter um windows 2008 server para fazer a instalação do SharePoint 2010... Então... Felizmente eu estava enganado!!! É possível sim, fazer essa instalação, é necessário apenas incluir uma linha no arquivo config.xml do instalador...

Segue o link do arquivo do linha de código com a matéria explicando com fazer para permitir a instalação do SharePoint 2010 no Windows 7, agora vai ser um pouco mais fácil testar o SharePoint... Ainda não fiz o teste, mas farei assim que arrumar um tempo...

http://www.linhadecodigo.com.br/artigo/2730/Instalando-o-SharePoint-2010-no-Windows-7.aspx

Até,

Estágio no Google

Olá,

Estava dando uma navegada no site da cia de talentos, e achei um anúncio de vaga de estágio no Google, aqui em São Paulo, para participar do processo seletivo, é necessário que o candidato tenha inglês fluente, frequente um curso de 4 -5 anos e tenha previsão de formatura em dezmbro de 2011, para quem se interessar, segue o link desta vaga http://www.ciadetalentos.com.br/google

Já que estamos falando sobre vagas de emprego, estou incluindo o link do APInfo (www.apinfo.com.br), que costuma ter vagas e algumas informações sobre a área de TI, uma ferramenta bem legal é a planilha de comparação entre CLT e PJ. Pra quem não conhece, vale a pensa dar uma visitada



Até,

terça-feira, 17 de maio de 2011

Sharepoint

Olá,

Andei dando uma pesquisada sobre o Sharepoint 2010, aparentemente ele está bem bacana, não tinha visto ele ainda... e o melhor,pra quem como eu não sabia, existe uma versão grátis dele, que é o Sharepoint Foundation 2010.. O arquivo é um pouco grande (169 MB), mas não é nada que seja impossível de ser baixado... O problema, pelo menos no meu caso é que ele precisa do Windows 2008 R2...

Para quem tem curiosidade, e o Windows 2008 R2 pra fazer uns testes, segue o link para o download
http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49c79a8a-4612-4e7d-a0b4-3bb429b46595&displaylang=en


Até,

segunda-feira, 16 de maio de 2011

Obtendo o HTML de uma página com C#

Olá,

Hoje tive que resolver um pequeno problema... Eu precisava fazer acesso à um site, ler o seu conteúdo (no caso era uma tabela que retornava baseado numa determinada URL) usei o código abaixo para fazer a leitura da página (no caso, como exemplo, deixei http://www.uol.com.br/ ), vamos ao código...

Primeiro faço using do System.IO e System.Net, depois criei um web.request e um web.response para respectivamente, fazer a chamada e o retorno do conteudo da página web, o conteudo retornado da página fica armazenado variavel resposta, que passo para o processo que faz o tratamento no html que preciso...

using System.IO;
using System.Net;


WebRequest req = WebRequest.Create("http://www.uol.com.br/");
WebResponse res = req.GetResponse();
Stream dataStream = res.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string resposta = reader.ReadToEnd();
p_processa( resposta );
reader.Close();
res.Close();

Até,

domingo, 15 de maio de 2011

Web Service CEP Grátis

Um recurso que muitas vezes precisamos é uma base de dados de CEP, porém para muitas empresas, a compra do cadastro diretamente dos correios é inviável...


Um amigo estava navegando na internet e me passou a dica do site abaixo, eles disponibilizam um webservice que pode ser chamado da sua aplicação, segundo o site é uma base independente dos correios, que eles atualizam manualmente, ainda não utilizei em nenhum projeto, mas dei uma olhada e eles tem exemplos em várias linguagens C#, delphi, PHP, Ruby, Python, Java e outras linguagens, até para Datasul... Vale a pena dar uma olhada...


http://www.buscarcep.com.br/


Até mais,

Falando em programação...

Aproveitando que o tema do dia é estudo, quero indicar o livro "Google Android - Aprenda a criar aplicações para dispositivos móveis com o Android SDK" do Ricardo R. Lecheta

Para quem está começando ou querendo começar a programar em Android é uma ótima pedida

O livro muito bom, de fácil leitura, com vários exemplo e em português para quem tem dificuldades com leitura em inglês



Até mais,

Voltando..

Olá,

Estou voltando com as postagens, agora vou tentar postar mais...

Como não podemos nos acomodar nessa área, na próxima semana irei fazer um curso sobre o Sharepoint 2010, vou tentar postar alguma coisa durante a semana..

Aproveitando, seguem alguns links com conteúdo para programadores

Microsoft
C#, Visual Basic, .Net, ASP.NET, Windows Phone e etc
http://msdn.microsoft.com/pt-br/

Oracle
PlSql, Forms e Reports e Java
http://www.oracle.com/technetwork/index.html

Android
http://developer.android.com/index.html

Apple ( Iphone, Ipad e MacOS)
http://developer.apple.com/devcenter/ios/index.action

Até mais,