[Cascavel-pm] Re:Conectar o SQL Server

Rafael Szarblewski rafasz em ibestvip.com.br
Terça Fevereiro 15 05:48:00 PST 2005


Muito obrigado pela ajuda de vocês, Luis Campos de Carvalho e Solli Moreira
Honorio.

Tenho uma outra dúvida. Solli, para usar o seu código preciso instalar o
módulo Win32::OLE, certo?

Pois é, tentei instalar, mas não consegui.

O modo que eu utilizo para instalar módulos é o seguinte:

 - Entro com o comando cpan

 - Depois digito o comando install Win32::ADO

Seguindo esses dois comandos era para instalar, não é? Ou estou errado? Ou
falta alguma coisa?

Abraços,

Rafael Szarblewski
Perl Developer


----- Original Message ----- 
From: <cascavel-pm-request em pm.org>
To: <cascavel-pm em pm.org>
Sent: Tuesday, February 15, 2005 2:35 AM
Subject: Digest Cascavel-pm, volume 82, assunto 1


enviar inscrições da lista de discussão Send Cascavel-pm para
cascavel-pm em pm.org

Para se cadastrar ou descadastrar via WWW, visite o endereço
http://mail.pm.org/mailman/listinfo/cascavel-pm
ou, via email, envie uma mensagem com a palavra 'help' no assunto ou
corpo da mensagem para
cascavel-pm-request em pm.org

Você poderá entrar em contato com a pessoa que gerencia a lista pelo
endereço
cascavel-pm-owner em pm.org

Quando responder, por favor edite sua linha Assunto assim ela será
mais específica que "Re: Contents of Cascavel-pm digest..."


Tópicos de Hoje:

   1. Re: Duvida sobre o GD::Image (Daniel Ruoso)
   2. Re: YAPC::Brasil::2005 / 2º Encontro Nacional
      (Luis Campos de Carvalho)
   3. Re: Duvida sobre o GD::Image (Luis Campos de Carvalho)
   4. Re: YAPC::Brasil::2005 / 2º Encontro Nacional
      (Luis Campos de Carvalho)
   5. Conectar o SQL Server (Rafael Szarblewski)
   6. Win32::GUI notify icon (tray) (Donato Azevedo)
   7. Re: Conectar o SQL Server (Luis Campos de Carvalho)
   8. YAPC::Brasil::2005 / 2º Encontro Nacional (João Gabriel)
   9. Re:Conectar o SQL Server (Solli Moreira Honorio)


----------------------------------------------------------------------

Message: 1
Date: Sat, 12 Feb 2005 08:40:10 -0300
From: Daniel Ruoso <daniel em ruoso.com>
Subject: Re: [Cascavel-pm] Duvida sobre o GD::Image
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <1108208410.1395.3.camel em cedro>
Content-Type: text/plain; charset=ISO-8859-1

Mas porque salvar em arquivo?

é só fazer a chamada da imagem direto para o cgi que cospe a imagem...
tipo
<IMG SRC="/cgi-bin/cgi_imagem.cgi?p1=v1&p2=v2">

Em Sex, 2005-02-11 às 19:29, Alceu R. de Freitas Jr. escreveu:
> Douglas, vc pode usar uma função em javascript para
> fazer uma outra chamada para o CGI apagar a figura
> assim que o usuário abandonar a página.
>
> Bem é só uma idéia. :-)
>
> []'s
> Alceu
>
>  --- Douglas de Souza <douglas em speedweb.com.br>
> escreveu:
> > Usei outra solução,
> >
> > fiz com que o cgi gravasse a imagem em um arquivo
> > .png
> >
> > portanto para nao ficar milhares de arquivo e como
> > nao podia ser o mesmo
> > nome para todos
> >
> > coloquei assim ano mes dia hora minuto segundo.png
> > (sem o espaço)
> >
> > e fiz ele executar no final do cgi uma funcao que
> > verifica todoas as imagens
> > só deixa
> >
> > na pasta as imagens de 1 minutos a menos
> >
> > ex: 2005 02 11 18 27 50.png (sem o espaco)
> >
> > coloquei um if p/ comparar se for < que $data-100
> >
> > ele deleta o arquivo...
> >
> > assim nao preciso passar por get o comando
> >
> > Achei mais seguro...
> >
> > []'s Douglas
> >
> >
> > ----- Original Message ----- 
> > From: "Luis Campos de Carvalho"
> > <monsieur_champs em yahoo.com.br>
> > To: "Cascavel Perl Mongers" <cascavel-pm em pm.org>
> > Sent: Friday, February 11, 2005 9:23 AM
> > Subject: Re: [Cascavel-pm] Duvida sobre o GD::Image
> >
> >
> > Douglas de Souza wrote:
> > > Ola,
> > > fiz um cgi/perl usando o modulo GD::Image
> > > portanto neste cgi ele só imprime a imagem
> > > como faço p/ colocar HTML junto???
> > > coloquei assim
> > >
> > > #!/usr/bin/perl
> > > use GD;
> > > $im = newFromPng GD::Image(PNG);
> > > print "Content-type:text/html\n\n";
> > > print "Teste de CGI, testando bahhhhhhhhh";
> > > print "Olha a imagem que eu fizzzzzzzz";
> > > print "Content-type:image/png\n\n";
> > > binmode STDOUT;
> > > print $im->png;
> > >
> > > só que dai sai um monte de código:
> > >
> > > Content-type:image/png ?PNG  IHDRJn
> > >
> > > como faço p/ imprimir os dois no mesmo CGI ?
> >
> >    Oies, Douglas.
> >    Para isso, você precisa respeitar o protocolo
> > HTTP, que diz que cada
> > Content-Type requisitado deve ser enviado
> > separadamente do restante.
> >
> >    Desta forma, para que o browser possa requisitar
> > a imagem (componente
> > do HTML) ele deve primeiro requisitar o HTML.
> >
> >    Para fucnionar:
> >    1. Construa um script CGI (ou página HTML) que
> > envie sua página HTML
> > (com referência para o script que gera sua imagem).
> >    2. Publique a página
> >    3. Requisite a página HTML. Automaticamente o seu
> > browser requisitará
> > a imagem (proveniente do script).
> >
> >    Espero que isso te ajude.
> >    Se ficou confuso, por favor pergunte mais, eu
> > estou à disposição para
> > ajudar.
> >
> >    Putamplexos!
> > -- 
> > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> >   Luis Campos de Carvalho is BSc in Comp Science,
> >   PerlMonk [SiteDocClan], Sao Paulo PM Leader,
> >   Unix Sys Admin && Certified Oracle DBA
> >   http://br.geocities.com/monsieur_champs/
> > =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
> >
> >
> >
> > _______________________________________________
> > Cascavel-pm mailing list
> > Cascavel-pm em pm.org
> > http://mail.pm.org/mailman/listinfo/cascavel-pm
> >
>
>
>
>
>
> _______________________________________________________
> Yahoo! Acesso Grátis - Instale o discador do Yahoo! agora.
http://br.acesso.yahoo.com/ - Internet rápida e grátis
> _______________________________________________
> Cascavel-pm mailing list
> Cascavel-pm em pm.org
> http://mail.pm.org/mailman/listinfo/cascavel-pm



------------------------------

Message: 2
Date: Mon, 14 Feb 2005 00:57:47 -0300
From: Luis Campos de Carvalho <monsieur_champs em yahoo.com.br>
Subject: Re: [Cascavel-pm] YAPC::Brasil::2005 / 2º Encontro Nacional
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <421021BB.1010009 em yahoo.com.br>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

João Gabriel wrote:
> Realmente não sei se vale a pena eu "matar" uma semana de aula e pegar
> 4 dias de ônibus (2 pra ir e 2 pra voltar) para ver palestras na qual
> eu (e outros creio eu) não tivemos mais noticias e fotos do evento.
>
> Realmente acho que ficou "vaga" de certa forma a divulgação do evento
> para quem ainda não conheçe-o.
>
> (outro dia me chamaram de louco por falar da minha possivel idéia de
> ir ao evento [ja que poucos sabem os beneficios do encontro])
>
> Fica ai a minha idéia de divulgar mais e melhor o evento.
>

   Olha, vai chover canivete aberto, mas desta vez eu vou fazer minhas
as palavras do JG... :-o

-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  Luis Campos de Carvalho is BSc in Comp Science,
  PerlMonk [SiteDocClan], Sao Paulo PM Leader,
  Unix Sys Admin && Certified Oracle DBA
  http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=



------------------------------

Message: 3
Date: Mon, 14 Feb 2005 02:09:15 -0300
From: Luis Campos de Carvalho <monsieur_champs em yahoo.com.br>
Subject: Re: [Cascavel-pm] Duvida sobre o GD::Image
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <4210327B.5040301 em yahoo.com.br>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Daniel Ruoso wrote:
> Mas porque salvar em arquivo?
>
> é só fazer a chamada da imagem direto para o cgi que cospe a imagem...
> tipo
> <IMG SRC="/cgi-bin/cgi_imagem.cgi?p1=v1&p2=v2">

   Claro, este script deve utilizar algumas técnicas de caching ou você
vai precisar de muito processador para atender a todas as requisições de
imagens...

   Eu recomendo também implementar algum limite sobre quantas
requisições um usuário (IP único) pode fazer por minuto, para evitar
ataques DoS.

   Putamplexos!
-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  Luis Campos de Carvalho is BSc in Comp Science,
  PerlMonk [SiteDocClan], Sao Paulo PM Leader,
  Unix Sys Admin && Certified Oracle DBA
  http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=



------------------------------

Message: 4
Date: Mon, 14 Feb 2005 02:16:43 -0300
From: Luis Campos de Carvalho <monsieur_champs em yahoo.com.br>
Subject: Re: [Cascavel-pm] YAPC::Brasil::2005 / 2º Encontro Nacional
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <4210343B.2070807 em yahoo.com.br>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Luis Campos de Carvalho wrote:
> João Gabriel wrote:
>
>> Realmente não sei se vale a pena eu "matar" uma semana de aula e pegar
>> 4 dias de ônibus (2 pra ir e 2 pra voltar) para ver palestras na qual
>> eu (e outros creio eu) não tivemos mais noticias e fotos do evento.
>>
>> Realmente acho que ficou "vaga" de certa forma a divulgação do evento
>> para quem ainda não conheçe-o.
>>
>> (outro dia me chamaram de louco por falar da minha possivel idéia de
>> ir ao evento [ja que poucos sabem os beneficios do encontro])
>>
>> Fica ai a minha idéia de divulgar mais e melhor o evento.
>>
>
>   Olha, vai chover canivete aberto, mas desta vez eu vou fazer minhas as
> palavras do JG... :-o
>

   Impressionante... eu fui procurar na lista, e acho que esta é a
primeira vez que eu concordo com alguma coisa que o JG posta (nada
pessoal, JG!)... vai MESMO chover canivete aberto...

   Deve ser o sono, eu vou dormir...
   Putamplexos para todos!
-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  Luis Campos de Carvalho is BSc in Comp Science,
  PerlMonk [SiteDocClan], Sao Paulo PM Leader,
  Unix Sys Admin && Certified Oracle DBA
  http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=



------------------------------

Message: 5
Date: Mon, 14 Feb 2005 12:04:46 -0300
From: "Rafael Szarblewski" <rafasz em ibestvip.com.br>
Subject: [Cascavel-pm] Conectar o SQL Server
To: <cascavel-pm em pm.org>
Message-ID: <01cb01c512a6$86658b40$24c8a8c0 em sistemica>
Content-Type: text/plain; charset="iso-8859-1"

Olá Monges,

  Alguém sabe me dizer se existe algum módulo para conectar ao SQL Server?

Desde já agradeço.

Um abraço,

----------------------------------------------------------------------------
----
Rafael Szarblewski - Sistêmica Computadores
Desenvolvedor Web
rafael em sistemica.info
Fone: (51)3328-11-22
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL:
http://mail.pm.org/pipermail/cascavel-pm/attachments/20050214/6a56f6e2/attachment-0001.htm

------------------------------

Message: 6
Date: Mon, 14 Feb 2005 11:03:12 -0300
From: Donato Azevedo <donatoaz em gmail.com>
Subject: [Cascavel-pm] Win32::GUI notify icon (tray)
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <1746e3e30502140603501adbc7 em mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

Olá pessoal,

eu estava tentando fazer um script para mandar uma janela qualquer da
barra de tarefas para a tray bar. (criar um icone na tray para uma
janela qualquer cujo nome é especificado em runtime)
com uma janela recem criada é simples:
new Win32::GUI::NotifyIcon(PARENT, %OPTIONS)
porem para uma janela para a qual eu peguei o handle usando FindWindow
eu nao consigo. Eu sei que para handles obtidos sem construção nao se
tem aceso aos metodos de maneira normal (sao overloaded) mas nao sei
se existe alguma restricao quanto a metodos construtores...
alguem pode ajudar um GUI::Newbie??
-- 
*******************************************
              Donato Azevedo
Engenharia de Controle e Automação
                      UFMG
*******************************************


------------------------------

Message: 7
Date: Mon, 14 Feb 2005 13:07:10 -0300
From: Luis Campos de Carvalho <monsieur_champs em yahoo.com.br>
Subject: Re: [Cascavel-pm] Conectar o SQL Server
To: Cascavel Perl Mongers <cascavel-pm em pm.org>
Message-ID: <4210CCAE.30306 em yahoo.com.br>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed

Rafael Szarblewski wrote:
> Olá Monges,
>
>   Alguém sabe me dizer se existe algum módulo para conectar ao SQL Server?
>
> Desde já agradeço.

   DBD específico, acho que não.
   Mas certamente o SQL Server é compatível com padrão ODBC, e você pode
usar o DBI+DBD::ODBC, certamente.

   Existem referências sobre isso nos arquivos desta lista.
   Acho que você poderia tentar dar uma espiada.
   Se precisar de mais ajuda que isso, ainda esta semana eu orientei o
João Gabriel sobre a forma correta de usar a interface com banco de
dados através da interface em duas camadas DBI + DBD. Acho que você pode
se aproveitar da leitura, também...

   No mais, acho que uma boa hora de leitura de manuais será suficiente
para fazer com que você consiga usar corretamente os drivers e interfaces.


   Se precisar de alguma ajuda específica, ou algum truque especial,
conte conosco. Os monges do Perl sempre têm um mantra extra na manga... ;-)

   Paz e Glória!
   Putamplexos!
-- 
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
  Luis Campos de Carvalho is BSc in Comp Science,
  PerlMonk [SiteDocClan], Sao Paulo PM Leader,
  Unix Sys Admin && Certified Oracle DBA
  http://br.geocities.com/monsieur_champs/
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=



------------------------------

Message: 8
Date: Mon, 14 Feb 2005 19:18:12 -0300
From: João Gabriel <jamorreu em gmail.com>
Subject: [Cascavel-pm] YAPC::Brasil::2005 / 2º Encontro Nacional
To: cascavel-pm em mail.pm.org
Message-ID: <8ff2963a05021414181308e166 em mail.gmail.com>
Content-Type: text/plain; charset=ISO-8859-1

Luis Campos...
>   Impressionante... eu fui procurar na lista, e acho que esta é a
>primeira vez que eu concordo com alguma coisa que o JG posta (nada
>pessoal, JG!)... vai MESMO chover canivete aberto...
>
>   Deve ser o sono, eu vou dormir...

Tú deveria está com muito sono na hora que postou isso... rsrs

mas não sei pq não concordou com minhas outras idéias... (vai ver é
porque eu só perguntei ou vc tem alguma marra comigo).

Quando estiver com sono e sem nada pra fazer, dá uma visitada no
Vitoria PM, CGiClube, fórums de perl espalhados pela net afora (tem
bastande brasileiros precisando de ajuda)... :D

Quanto ao site do YAPC Brasil 2005, quanto entra no ar??

-- 
Um abraço,
João Gabriel / JGCL


------------------------------

Message: 9
Date: Tue, 15 Feb 2005 02:35:18 -0300
From: "Solli Moreira Honorio" <shonorio em terra.com.br>
Subject: Re:[Cascavel-pm] Conectar o SQL Server
To: "cascavel-pm" <cascavel-pm em pm.org>
Message-ID: <IBXU6U$4F1D97354FA6D6748783E636033BCD35 em terra.com.br>
Content-Type: text/plain; charset="iso-8859-1"

Rafael,

Estou enviando uma fração do meu código base para acessar o SQL Server, tome
o cuidado (e faça as alterações necessárias) com as constantes que estão no
código.

O código acessa o SQL via Ado, e está com as melhores práticas de acesso
neste componente.

Se você tiver interessado em ver as 1001 connection strings para OLEDB, dê
uma olhada no link
http://www.able-consulting.com/MDAC/ADO/Connection/OLEDB_Providers.htm

Solli M. Honorio

<code>
use Win32::OLE qw(in);
use Win32::OLE::Const;
sub ConnectDB
{
    my $DBConn        = Win32::OLE->new('ADODB.Connection');
    my $DB_CONNECTION = shift;

    $DBConn->Open( $DB_CONNECTION );
    if ( Win32::OLE->LastError() )
    {
        my $Error = Win32::OLE->LastError();
 # Trate o erro aqui !!!
        return undef;
    }
    else
    {
        return $DBConn;
    }
}
sub DBExecute
{
    my ($DB_CONNECTION, $String, $ToReturn, $ErrosReturn ) = @_;
    my ($DBConn, $RS, $ArgCount);
    my $Loop = 0;

    return INVALID_PARAMETER if ( ref ( $String ) );
    return NULL_PARAMETER    if (! $String );
    $ArgCount = ( scalar (@_) - 2 );                    # Get number of
argument
    if ( $DBConn = ConnectDB($DB_CONNECTION) )          # Try to connect on
DB
    {                                                   # ... if ok ...
        if (! $ArgCount )  # If has just one argument, then it's mean
        {                  # no recordset
            $DBConn->Execute ( $String, undef, (0x00000080 + 0x0001) );
        }
        else              # Otherwise mean recordset
        {
            $RS = $DBConn->Execute ( $String );
        }
        if ( Win32::OLE->LastError() )
        {
         # If any error happen, write error message on EventLog
         # and abort this class.
            my $Error = Win32::OLE->LastError();
            WriteEventLog ( $ENV{COMPUTERNAME},    # Computer name
                            ERROR_DB_EXCUTE,       # Event ID
                            $Error,                # String
                            EVT_ERROR);            # Event Type
            return ERROR_DB_EXCUTE;
        }
        if (! $ArgCount ) # Return ok if don't need anything more
                { $DBConn->Close(); return };
        # Clear any before data on an array ref.
        map { pop @{$ToReturn} } @{$ToReturn};
        # Save the result on array.
        while ( )
        {
            # Get all message returned by ADO connection
            foreach my $Error ( in ( $DBConn->Errors() ) )
            {
                my $Description = $Error->{Description};
                $Description    =~ s/\s*$//;
                push @{$ErrosReturn}, $Description;
            }

            if ( defined $RS->{EOF} )
            {
                while (! $RS->{EOF} )
                {
                    my %hash = ();
                    foreach my $field ( in ( $RS->Fields() ) )
                    {
                        $hash{$field->{Name}} = $field->{Value}
                    }
                    push @{$ToReturn}, \%hash;
                    $RS->MoveNext;
                }
            }
            eval { $RS = $RS->NextRecordSet(); };
            last if ( $@ );
        }
        # Clean all object used by ADO connection...
        $RS->Close();
        $DBConn->Close();
        undef $RS;
        undef $DBConn;
        return;
    }
    else
    {
        return ERROR_DB_CONNECT;
    }
}
my $ConnectionString = "Provider=sqloledb; Data Source=Server; Initial
Catalog=master;Integrated Security=SSPI";
my $string           = "select * from table";
DBExecute ($ConnectionString, $string, \@Return );
</code>

De:cascavel-pm-bounces em pm.org

Para:cascavel-pm em pm.org

Cópia:

Data:Mon, 14 Feb 2005 12:04:46 -0300

Assunto:[Cascavel-pm] Conectar o SQL Server



> Olá Monges,
>
>   Alguém sabe me dizer se existe algum módulo para conectar ao SQL Server?
>
> Desde já agradeço.
>
> Um abraço,


Rafael Szarblewski - Sistêmica Computadores
Desenvolvedor Web
rafael em sistemica.info
Fone: (51)3328-11-22
-------------- Próxima Parte ----------
Um anexo em HTML foi limpo...
URL:
http://mail.pm.org/pipermail/cascavel-pm/attachments/20050215/1cc8636e/attachment.htm

------------------------------

_______________________________________________
Cascavel-pm mailing list
Cascavel-pm em pm.org
http://mail.pm.org/mailman/listinfo/cascavel-pm

Fim da Digest Cascavel-pm, volume 82, assunto 1
***********************************************




Mais detalhes sobre a lista de discussão Cascavel-pm