SlideShare ist ein Scribd-Unternehmen logo
1 von 30
Explorando a Integração com .NET com o Magic xpa
Magic Sem Segredos – S01E07 – 21 Março 2014
Magic Sem Segredos
• Magic Software
• Magic em Ação
• Painel e Perguntas e
Respostas (Comentários do
Blog)
Agenda
http://mss.magicsoftware.com.br
Quem somos
Um fornecedor global de plataformas de desenvolvimento e integração
de aplicações
Experiência
comprovada
Tecnologia e
Inovação
Necessidades de
Negócios
30anos
Especialistas
em
Com foco em
Quem somos
• NASDAQ (MGIC)
• Fundada em 1983 (+30
anos)
• 14 Escritórios
mundialmente
• Presente em mais de 50
países
• Parceiros +3.000
Alguns Clientes Globais
Quem somos no Brasil
• Fundada em 1992 (+20
anos)
• Distribuidor exclusivo
local e na maior parte dos
países da América do Sul
Alguns Clientes no Brasil
Alguns Parceiros no Brasil
Desafio: Disponibilizar o
que há de mais avançado e
prático em termos de
tecnologia, para nossos
clientes/parceiros
desenvolvedores (Magic
xpa / Magic mdm) e
integradores (Magic xpi)
A Magic potencializa seus clientes e parceiros em todo o mundo
com tecnologias mais inteligentes que oferecem uma experiência
multicanal de processos, lógica e dados empresariais.
Magic xpa: Plataforma
completa para criação de
soluções corporativas para
os ecossistemas Mobile,
Desktop, Servidores e
RIA
Integração com .NET
A Plataforma de Aplicações Magic xpa permite integração
com qualquer controle ou biblioteca .NET.
Você pode evoluir a experiência do usuários em suas
aplicações RIA ou Cliente/Servidor colocando controles
.NET diretamente nas interfaces (telas).
Você pode também evoluir as funcionalidades da
aplicação através de integração com formulários ou
bibliotecas .NET.
Para acessar essas funcionalidades .NET, é necessário
ter o .NET framework V2.0 SP1 (ou superior) instalado
nas máquinas.
Magic em Ação
Definindo Variáveis .NET
Após carregar uma biblioteca .NET na Plataforma de Aplicações
Magic xpa, todos seus objetos e métodos estarão acessíveis.
As bibliotecas .NET são carregadas no repositório de
componentes (CRR) dos projetos Magic xpa. Podemos definir
uma variável .NET para uso em programas do Magic xpa e se o
objeto for um "controle", podemos adicioná-lo à tela do
programa e ajustar suas propriedades.
Controlando Propriedades .NET
Objetos .NET possuem propriedades
e métodos. As propriedades são
campos do objeto que podem ser
acessados para consulta e/ou
modificação de algum atributo. Estes
valores de atributos normalmente são
usados em cálculos, apresentação
ao usuário e etc. A relação entre os
tipos de dados .NET e os tipos de
dados Magic xpa pode ser observada
a seguir
Correspondência entre Tipos
Tipo na
Plataforma
Magic xpa
Tipo .NET
Numeric
SByte, Byte , Int16, Uint16, Int32, UInt32, Int64, UInt64, IntPtr,
UIntPtr, Char, Decimal, Single, Double, Float
Alpha Unicode Char, Char[], String, StringBuilder
Date DateTime
Time DateTime, TimeSpan
Logical Boolean
Blob Byte, Byte[], Char, Char[], String, StringBuilder
Vector
ICollection (somente de .NET para Magic xpa), IList e objetos que
implementam indexadores através da palavra-chave 'this'.
Somente indexadores cujo índice é numérico (int). O Magic xpa só
converte vetores simples (sem multi dimensão)
Usando a função DNCast()
O Magic xpa possui uma função chamada DNCast() para
conversão explícita de um tipo .NET em outro, quando
necessário.
Usando a função DNSet()
O Magic xpa possui uma função chamada DNSet() para
realizar alteração do conteúdo de propriedades de
objetos .NET (.NET=DN). Além disso, objetos .NET
podem ser acessados diretamente do editor de
expressões através do prefixo: DotNet.
Usando Pseudônimos (Alias) .NET
O sistema de nomeação de tipos no
.NET é longo e requer muita digitação.
O Magic xpa permite criar pseudônimos
para as bibliotecas carregadas, afim de
facilitar o acesso aos tipos com menor
esforço de digitação. Mesmo o Magic
xpa possuindo o recurso "intelliSense"
no acesso ao .NET, os pseudônimos
são uma ferramenta bastante útil.
Usando Métodos .NET
Muitos objetos .NET permitem executar ações através de
seus métodos (procedimentos ou funções) e seus eventos. O
Magic xpa permite invocar estes métodos e também
interceptar estes eventos.
Como objetos .NET podem disparar eventos durante a
execução de programas, o Magic xpa permite criar "handlers"
para estes eventos, e definir ações a serem executadas
dentro destes "handlers".
Interceptando Eventos .NET
Os desenvolvedores Magic xpa são devem estar
familiarizados com o conceito de "Evento" e "Handler de
Evento", que é nativo da plataforma. Vários objetos .NET
expõem eventos que podem ser disparados durante a
execução dos programas. Especialmente controles .NET,
que possuem eventos como “OnMouseClick”. O Magic
xpa permite a criação de "handlers" para estes eventos,
afim de se adicionar regras de negócio a uma ação que
ocorreu durante a execução de um programa.
Trabalhando com Construtores
Quando um objeto .NET não é colocado no formulário, ele necessita
ser instanciado manualmente. Isso é feito invocando-se o "construtor"
da classe. Os construtores são métodos que possuem o mesmo nome
da classe e que retornam uma instância de objeto da referida classe.
Os construtores devem ser acionados pelo editor de expressões,
usando-se o prefixo: DotNet. Por exemplo, o construtor da classe
StringBuilder deve ser invocado desta forma: DotNet.StringBuilder()
Definindo Vetores .NET
Um vetor (array) .NET é similar a um vetor Magic xpa. Ou
seja: variáveis que armazenam múltiplos valores de um
mesmo tipo. Mas ao contrário de vetores Magic xpa, que
possuem tamanho dinâmico, vetores .NET precisam ter
seu tamanho máximo definido na sua instanciação.
No Magic xpa, um vetor .NET é definido adicionando-se
“[ ]” na definição do tipo. O tamanho do vetor deve ser
definido na instanciação do objeto.
Manipulando Exceções
Todas as exceções que possam ocorrer no acesso a
objetos .NET são tratadas internamente pelo Magic xpa e
não são propagadas (throw) para os programas.
As funções DNExceptionOccurred() e DNException()
permitem consultar o status do último acesso ao .NET
realizado pelo Magic xpa. Se DNExceptionOccurred()
retornar "verdadeiro", o último acesso gerou uma
exceção .NET. Neste caso, podemos usar
DNException() para ter acesso a este objeto que
descreve a exceção.
Usando Código .NET
Além de manipular objetos .NET nativamente nos
programas Magic xpa, é possível também escrever
trechos de código .NET diretamente em C# ou VB.NET, e
utilizá-los. Isso é feito através do comando "Invoke
.NET".
O código escrito é compilado pelo .NET CLR e o Magic
xpa Studio salva este código como parte do programa.
Durante a execução, o código já compilado é acionado
pelo Magic xpa Deployment.
Controles .NET com “DataView=Yes”
Alguns controles .NET possuem uma propriedade
chamada “DataSource” que define a fonte dos dados a
serem apresentados.
Se estes controles tiverem a sua propriedade DataView
definida como Yes, o Magic xpa converte
automaticamente o DataView do programa em
DataSource .NET, para ser utilizado pelo controle.
* exige Preload View=Yes
Controles .NET com “DataBind”
Quando os controles .NET possuem a regra de DataBind
definida, alterações nas variáveis Magic xpa são
refletidas automaticamente no controle .NET e vice-
versa: alterações no controle .NET se refletem na
variável Magic xpa.
Lidando com a interface IDisposable
Objetos .NET que implementam a interface “IDisposable”
sinalizam que estão trabalhando com recursos críticos do
sistema operacional e que devem ser liberados o mais
rápido possível.
Isso pode ser feito invocando-se o método Dispose() do
objeto instanciado.
No Magic xpa isso também deve ser realizado pelo
desenvolvedor, por exemplo na Task Suffix.
Exemplo: objeto FileStream.
Migrando Controles ActiveX
Controles ActiveX não podem ser utilizados diretamente
em formulários de programas do Magic xpa, porque
estes formulários são do tipo .NET.
Estes controles precisam primeiro ser convertidos em
“.NET User Controls”.
Isso é feito com o utilitário AxImp da MicroSoft.
Além da biblioteca gerada durante a conversão, o
controle ActiveX ainda precisa estar instalado nas
máquinas.
Obrigado e até o próximo
http://mss.magicsoftware.com.br

Weitere ähnliche Inhalte

Andere mochten auch

Parcs naturals cat
Parcs naturals catParcs naturals cat
Parcs naturals catsheilacirach
 
Prefix hijacked!
Prefix hijacked!Prefix hijacked!
Prefix hijacked!APNIC
 
AD spending and new media Internet and Web measurement
AD spending and new mediaInternet and Web measurementAD spending and new mediaInternet and Web measurement
AD spending and new media Internet and Web measurementsergejsantos
 
1 becca fitzpatrick hush, hush 0.5 - los calabozos de langeais
1 becca fitzpatrick   hush, hush 0.5 - los calabozos de langeais1 becca fitzpatrick   hush, hush 0.5 - los calabozos de langeais
1 becca fitzpatrick hush, hush 0.5 - los calabozos de langeaisamor por los libros
 
Boletín emprégate 6.14
Boletín emprégate 6.14Boletín emprégate 6.14
Boletín emprégate 6.14odesvanmarita
 
Lleva un libro en la maleta - Virginia Read Escobal / Lucia Sforza
Lleva un libro en la maleta - Virginia Read Escobal / Lucia SforzaLleva un libro en la maleta - Virginia Read Escobal / Lucia Sforza
Lleva un libro en la maleta - Virginia Read Escobal / Lucia SforzaPintar-Pintar Editorial
 
Cp La Carriona
Cp La CarrionaCp La Carriona
Cp La CarrionaZambrano
 
Solmene N°1 Gestion Tics y Proyectos Informaticos
Solmene N°1 Gestion Tics y Proyectos InformaticosSolmene N°1 Gestion Tics y Proyectos Informaticos
Solmene N°1 Gestion Tics y Proyectos Informaticosguest6261e0c
 
Video Management Solution Providers India
Video Management Solution Providers IndiaVideo Management Solution Providers India
Video Management Solution Providers IndiaMatrix Comsec
 
Workforce Investment Works Campaign
Workforce Investment Works CampaignWorkforce Investment Works Campaign
Workforce Investment Works CampaignCelina Shands
 
Manual para crear una cuenta en yahoo
Manual para crear una cuenta en yahooManual para crear una cuenta en yahoo
Manual para crear una cuenta en yahooJoysa Angulo
 
Pst edutabajo mecanismos
Pst edutabajo mecanismosPst edutabajo mecanismos
Pst edutabajo mecanismosariel vergara
 
Proyectos de digitalización y preservación de la Biblioteca Complutense
Proyectos de digitalización y preservación de la Biblioteca ComplutenseProyectos de digitalización y preservación de la Biblioteca Complutense
Proyectos de digitalización y preservación de la Biblioteca ComplutenseBiblioteca Nacional de España
 

Andere mochten auch (20)

Parcs naturals cat
Parcs naturals catParcs naturals cat
Parcs naturals cat
 
Prefix hijacked!
Prefix hijacked!Prefix hijacked!
Prefix hijacked!
 
AD spending and new media Internet and Web measurement
AD spending and new mediaInternet and Web measurementAD spending and new mediaInternet and Web measurement
AD spending and new media Internet and Web measurement
 
1 becca fitzpatrick hush, hush 0.5 - los calabozos de langeais
1 becca fitzpatrick   hush, hush 0.5 - los calabozos de langeais1 becca fitzpatrick   hush, hush 0.5 - los calabozos de langeais
1 becca fitzpatrick hush, hush 0.5 - los calabozos de langeais
 
Boletín emprégate 6.14
Boletín emprégate 6.14Boletín emprégate 6.14
Boletín emprégate 6.14
 
Lleva un libro en la maleta - Virginia Read Escobal / Lucia Sforza
Lleva un libro en la maleta - Virginia Read Escobal / Lucia SforzaLleva un libro en la maleta - Virginia Read Escobal / Lucia Sforza
Lleva un libro en la maleta - Virginia Read Escobal / Lucia Sforza
 
Cp La Carriona
Cp La CarrionaCp La Carriona
Cp La Carriona
 
Verdades
VerdadesVerdades
Verdades
 
Solmene N°1 Gestion Tics y Proyectos Informaticos
Solmene N°1 Gestion Tics y Proyectos InformaticosSolmene N°1 Gestion Tics y Proyectos Informaticos
Solmene N°1 Gestion Tics y Proyectos Informaticos
 
Video Management Solution Providers India
Video Management Solution Providers IndiaVideo Management Solution Providers India
Video Management Solution Providers India
 
Workforce Investment Works Campaign
Workforce Investment Works CampaignWorkforce Investment Works Campaign
Workforce Investment Works Campaign
 
Manual oficial Google AdWords
Manual oficial Google AdWords Manual oficial Google AdWords
Manual oficial Google AdWords
 
Los gatos luisa castrillon
Los gatos luisa castrillonLos gatos luisa castrillon
Los gatos luisa castrillon
 
Moodle explicado con Lego
Moodle explicado con LegoMoodle explicado con Lego
Moodle explicado con Lego
 
Manual para crear una cuenta en yahoo
Manual para crear una cuenta en yahooManual para crear una cuenta en yahoo
Manual para crear una cuenta en yahoo
 
La prostitucion.1
La prostitucion.1La prostitucion.1
La prostitucion.1
 
Pst edutabajo mecanismos
Pst edutabajo mecanismosPst edutabajo mecanismos
Pst edutabajo mecanismos
 
ANTITAUROMAQUIA
ANTITAUROMAQUIAANTITAUROMAQUIA
ANTITAUROMAQUIA
 
Proyectos de digitalización y preservación de la Biblioteca Complutense
Proyectos de digitalización y preservación de la Biblioteca ComplutenseProyectos de digitalización y preservación de la Biblioteca Complutense
Proyectos de digitalización y preservación de la Biblioteca Complutense
 
Gandhaka kalpa
Gandhaka kalpaGandhaka kalpa
Gandhaka kalpa
 

Ähnlich wie Explorando a Integração com .NET no Magic xpa

Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasBreno Vitorino
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverEduardo Jorge
 
Domain Driven Design (DDD) - DevIsland, BH
Domain Driven Design (DDD) - DevIsland, BHDomain Driven Design (DDD) - DevIsland, BH
Domain Driven Design (DDD) - DevIsland, BHGiovanni Bassi
 
Integração de Tecnologias
Integração de TecnologiasIntegração de Tecnologias
Integração de Tecnologiaselliando dias
 
Apresentação Prof. Luis Fernando Martha e Rafael Rangel
Apresentação Prof. Luis Fernando Martha e Rafael Rangel Apresentação Prof. Luis Fernando Martha e Rafael Rangel
Apresentação Prof. Luis Fernando Martha e Rafael Rangel Opencadd Advanced Technology
 
Arquitetura no Android, realmente importa? - TDC 2011
Arquitetura no Android, realmente importa? - TDC 2011Arquitetura no Android, realmente importa? - TDC 2011
Arquitetura no Android, realmente importa? - TDC 2011Marcos Paulo Souza Damasceno
 
Java - Visão geral e Exercícios
Java - Visão geral e ExercíciosJava - Visão geral e Exercícios
Java - Visão geral e ExercíciosArthur Emanuel
 
Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4CDS
 
Programação Funcional usando C# e F#
Programação Funcional usando C# e F#Programação Funcional usando C# e F#
Programação Funcional usando C# e F#Gabriel Schade Cardoso
 
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIDelphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIMario Guedes
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2Felipe Pimentel
 
01 Orientacao A Objetos Programacao
01   Orientacao A Objetos   Programacao01   Orientacao A Objetos   Programacao
01 Orientacao A Objetos Programacaotaniamaciel
 
Programação Web com PHP 7.x
Programação Web com PHP 7.xProgramação Web com PHP 7.x
Programação Web com PHP 7.xNorton Guimarães
 
Framework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoFramework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoMarcius Brandão
 

Ähnlich wie Explorando a Integração com .NET no Magic xpa (20)

Linguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e TécnicasLinguagem Java - Conceitos e Técnicas
Linguagem Java - Conceitos e Técnicas
 
DDD > Experiências
DDD > ExperiênciasDDD > Experiências
DDD > Experiências
 
Intro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserverIntro padroesprojetoadaptertemplateobserver
Intro padroesprojetoadaptertemplateobserver
 
Domain Driven Design (DDD) - DevIsland, BH
Domain Driven Design (DDD) - DevIsland, BHDomain Driven Design (DDD) - DevIsland, BH
Domain Driven Design (DDD) - DevIsland, BH
 
Java e orientação a objetos
Java e orientação a objetosJava e orientação a objetos
Java e orientação a objetos
 
Integração de Tecnologias
Integração de TecnologiasIntegração de Tecnologias
Integração de Tecnologias
 
Apresentação Prof. Luis Fernando Martha e Rafael Rangel
Apresentação Prof. Luis Fernando Martha e Rafael Rangel Apresentação Prof. Luis Fernando Martha e Rafael Rangel
Apresentação Prof. Luis Fernando Martha e Rafael Rangel
 
Projeto de Software
Projeto de SoftwareProjeto de Software
Projeto de Software
 
Arquitetura no Android, realmente importa? - TDC 2011
Arquitetura no Android, realmente importa? - TDC 2011Arquitetura no Android, realmente importa? - TDC 2011
Arquitetura no Android, realmente importa? - TDC 2011
 
Aula1
Aula1Aula1
Aula1
 
Javascript: primeiros passos
Javascript: primeiros passosJavascript: primeiros passos
Javascript: primeiros passos
 
Java - Visão geral e Exercícios
Java - Visão geral e ExercíciosJava - Visão geral e Exercícios
Java - Visão geral e Exercícios
 
Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4Visual Studio 2010 e C# 4
Visual Studio 2010 e C# 4
 
Programação Funcional usando C# e F#
Programação Funcional usando C# e F#Programação Funcional usando C# e F#
Programação Funcional usando C# e F#
 
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTIDelphi Conference 2012 - Programação Baseado em Regras com RTTI
Delphi Conference 2012 - Programação Baseado em Regras com RTTI
 
[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2[CLPE] Novidades do Asp.net mvc 2
[CLPE] Novidades do Asp.net mvc 2
 
01 Orientacao A Objetos Programacao
01   Orientacao A Objetos   Programacao01   Orientacao A Objetos   Programacao
01 Orientacao A Objetos Programacao
 
Programação Web com PHP 7.x
Programação Web com PHP 7.xProgramação Web com PHP 7.x
Programação Web com PHP 7.x
 
Java Seminar
Java SeminarJava Seminar
Java Seminar
 
Framework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da DissertacaoFramework Entities - Apresentação da Defesa da Dissertacao
Framework Entities - Apresentação da Defesa da Dissertacao
 

Mehr von Magic Software Brasil

Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1
Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1
Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1Magic Software Brasil
 
Magic Sem Segredos S03 E02 - Novidades no Magic xpi 4.5
Magic Sem Segredos  S03 E02 - Novidades no Magic xpi 4.5Magic Sem Segredos  S03 E02 - Novidades no Magic xpi 4.5
Magic Sem Segredos S03 E02 - Novidades no Magic xpi 4.5Magic Software Brasil
 
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...Magic Software Brasil
 
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03Magic Software Brasil
 
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01Magic Software Brasil
 
6 Elementos Essenciais na Integração Salesforce
6 Elementos Essenciais na Integração Salesforce6 Elementos Essenciais na Integração Salesforce
6 Elementos Essenciais na Integração SalesforceMagic Software Brasil
 
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...Magic Software Brasil
 
Magic – Mobile Device Management - Magic Sem Segredos – S01E17
Magic – Mobile Device Management - Magic Sem Segredos – S01E17Magic – Mobile Device Management - Magic Sem Segredos – S01E17
Magic – Mobile Device Management - Magic Sem Segredos – S01E17Magic Software Brasil
 
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16Magic Software Brasil
 
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15Magic Software Brasil
 
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13Magic Software Brasil
 
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10Magic Software Brasil
 
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09Magic Software Brasil
 
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06Magic Software Brasil
 
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...Magic Software Brasil
 
Magic Software - Mobilidade e Integração
Magic Software  - Mobilidade e IntegraçãoMagic Software  - Mobilidade e Integração
Magic Software - Mobilidade e IntegraçãoMagic Software Brasil
 
Magic integration platform Microsoft Partners
Magic integration platform   Microsoft PartnersMagic integration platform   Microsoft Partners
Magic integration platform Microsoft PartnersMagic Software Brasil
 

Mehr von Magic Software Brasil (20)

Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1
Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1
Magic Sem Segredos S03 E01 - Novidades no Magic xpa 3.1
 
Magic Sem Segredos S03 E02 - Novidades no Magic xpi 4.5
Magic Sem Segredos  S03 E02 - Novidades no Magic xpi 4.5Magic Sem Segredos  S03 E02 - Novidades no Magic xpi 4.5
Magic Sem Segredos S03 E02 - Novidades no Magic xpi 4.5
 
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...
Melhores Práticas no Desenvolvimento de Apps Multicanais – Magic Sem Segredos...
 
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03
Experimente o Poder do Magic xpa 3.0 – Magic Sem Segredos – S02E03
 
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01
Monitoramento de Projetos Magic xpi – Magic Sem Segredos – S02 E01
 
6 Elementos Essenciais na Integração Salesforce
6 Elementos Essenciais na Integração Salesforce6 Elementos Essenciais na Integração Salesforce
6 Elementos Essenciais na Integração Salesforce
 
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...
Soluções Móveis Integradas ao Salesforce utilizando Magic xpa – Magic Sem Seg...
 
Magic – Mobile Device Management - Magic Sem Segredos – S01E17
Magic – Mobile Device Management - Magic Sem Segredos – S01E17Magic – Mobile Device Management - Magic Sem Segredos – S01E17
Magic – Mobile Device Management - Magic Sem Segredos – S01E17
 
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16
Magic Mobile Accelerator Framework – Magic Sem Segredos – S01E16
 
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15
As novidades da versão Magic xpa 2.5 - Magic Sem Segredos - S01E15
 
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13
Direcao defensiva em Projetos de Integracao - Magic Sem Segredos - S01 E13
 
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10
Integração facilitada entre ERPs e CRM Sugar - Magic Sem Segredos - S01E10
 
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09
Tópicos Avançados no Desenvolvimento Mobile com Magic xpa - MSS S01E09
 
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06
Integração Facilitada entre ERPs e Salesforce – Magic Sem Segredos – S01E06
 
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...
Arquitetura IMGD da Plataforma de Integração Magic xpi 4 - Magic Sem Segredos...
 
Magic Software - Mobilidade e Integração
Magic Software  - Mobilidade e IntegraçãoMagic Software  - Mobilidade e Integração
Magic Software - Mobilidade e Integração
 
Magic xpi NFe Apresentação geral
Magic xpi NFe   Apresentação geralMagic xpi NFe   Apresentação geral
Magic xpi NFe Apresentação geral
 
Magic xpa total mobility experience
Magic xpa   total mobility experienceMagic xpa   total mobility experience
Magic xpa total mobility experience
 
Magic integration platform Microsoft Partners
Magic integration platform   Microsoft PartnersMagic integration platform   Microsoft Partners
Magic integration platform Microsoft Partners
 
Magic xpa total mobility experience
Magic xpa  total mobility experienceMagic xpa  total mobility experience
Magic xpa total mobility experience
 

Explorando a Integração com .NET no Magic xpa

  • 1. Explorando a Integração com .NET com o Magic xpa Magic Sem Segredos – S01E07 – 21 Março 2014
  • 2. Magic Sem Segredos • Magic Software • Magic em Ação • Painel e Perguntas e Respostas (Comentários do Blog) Agenda http://mss.magicsoftware.com.br
  • 3. Quem somos Um fornecedor global de plataformas de desenvolvimento e integração de aplicações Experiência comprovada Tecnologia e Inovação Necessidades de Negócios 30anos Especialistas em Com foco em
  • 4. Quem somos • NASDAQ (MGIC) • Fundada em 1983 (+30 anos) • 14 Escritórios mundialmente • Presente em mais de 50 países • Parceiros +3.000
  • 6. Quem somos no Brasil • Fundada em 1992 (+20 anos) • Distribuidor exclusivo local e na maior parte dos países da América do Sul
  • 9. Desafio: Disponibilizar o que há de mais avançado e prático em termos de tecnologia, para nossos clientes/parceiros desenvolvedores (Magic xpa / Magic mdm) e integradores (Magic xpi)
  • 10. A Magic potencializa seus clientes e parceiros em todo o mundo com tecnologias mais inteligentes que oferecem uma experiência multicanal de processos, lógica e dados empresariais.
  • 11. Magic xpa: Plataforma completa para criação de soluções corporativas para os ecossistemas Mobile, Desktop, Servidores e RIA
  • 12. Integração com .NET A Plataforma de Aplicações Magic xpa permite integração com qualquer controle ou biblioteca .NET. Você pode evoluir a experiência do usuários em suas aplicações RIA ou Cliente/Servidor colocando controles .NET diretamente nas interfaces (telas). Você pode também evoluir as funcionalidades da aplicação através de integração com formulários ou bibliotecas .NET. Para acessar essas funcionalidades .NET, é necessário ter o .NET framework V2.0 SP1 (ou superior) instalado nas máquinas.
  • 14. Definindo Variáveis .NET Após carregar uma biblioteca .NET na Plataforma de Aplicações Magic xpa, todos seus objetos e métodos estarão acessíveis. As bibliotecas .NET são carregadas no repositório de componentes (CRR) dos projetos Magic xpa. Podemos definir uma variável .NET para uso em programas do Magic xpa e se o objeto for um "controle", podemos adicioná-lo à tela do programa e ajustar suas propriedades.
  • 15. Controlando Propriedades .NET Objetos .NET possuem propriedades e métodos. As propriedades são campos do objeto que podem ser acessados para consulta e/ou modificação de algum atributo. Estes valores de atributos normalmente são usados em cálculos, apresentação ao usuário e etc. A relação entre os tipos de dados .NET e os tipos de dados Magic xpa pode ser observada a seguir
  • 16. Correspondência entre Tipos Tipo na Plataforma Magic xpa Tipo .NET Numeric SByte, Byte , Int16, Uint16, Int32, UInt32, Int64, UInt64, IntPtr, UIntPtr, Char, Decimal, Single, Double, Float Alpha Unicode Char, Char[], String, StringBuilder Date DateTime Time DateTime, TimeSpan Logical Boolean Blob Byte, Byte[], Char, Char[], String, StringBuilder Vector ICollection (somente de .NET para Magic xpa), IList e objetos que implementam indexadores através da palavra-chave 'this'. Somente indexadores cujo índice é numérico (int). O Magic xpa só converte vetores simples (sem multi dimensão)
  • 17. Usando a função DNCast() O Magic xpa possui uma função chamada DNCast() para conversão explícita de um tipo .NET em outro, quando necessário.
  • 18. Usando a função DNSet() O Magic xpa possui uma função chamada DNSet() para realizar alteração do conteúdo de propriedades de objetos .NET (.NET=DN). Além disso, objetos .NET podem ser acessados diretamente do editor de expressões através do prefixo: DotNet.
  • 19. Usando Pseudônimos (Alias) .NET O sistema de nomeação de tipos no .NET é longo e requer muita digitação. O Magic xpa permite criar pseudônimos para as bibliotecas carregadas, afim de facilitar o acesso aos tipos com menor esforço de digitação. Mesmo o Magic xpa possuindo o recurso "intelliSense" no acesso ao .NET, os pseudônimos são uma ferramenta bastante útil.
  • 20. Usando Métodos .NET Muitos objetos .NET permitem executar ações através de seus métodos (procedimentos ou funções) e seus eventos. O Magic xpa permite invocar estes métodos e também interceptar estes eventos. Como objetos .NET podem disparar eventos durante a execução de programas, o Magic xpa permite criar "handlers" para estes eventos, e definir ações a serem executadas dentro destes "handlers".
  • 21. Interceptando Eventos .NET Os desenvolvedores Magic xpa são devem estar familiarizados com o conceito de "Evento" e "Handler de Evento", que é nativo da plataforma. Vários objetos .NET expõem eventos que podem ser disparados durante a execução dos programas. Especialmente controles .NET, que possuem eventos como “OnMouseClick”. O Magic xpa permite a criação de "handlers" para estes eventos, afim de se adicionar regras de negócio a uma ação que ocorreu durante a execução de um programa.
  • 22. Trabalhando com Construtores Quando um objeto .NET não é colocado no formulário, ele necessita ser instanciado manualmente. Isso é feito invocando-se o "construtor" da classe. Os construtores são métodos que possuem o mesmo nome da classe e que retornam uma instância de objeto da referida classe. Os construtores devem ser acionados pelo editor de expressões, usando-se o prefixo: DotNet. Por exemplo, o construtor da classe StringBuilder deve ser invocado desta forma: DotNet.StringBuilder()
  • 23. Definindo Vetores .NET Um vetor (array) .NET é similar a um vetor Magic xpa. Ou seja: variáveis que armazenam múltiplos valores de um mesmo tipo. Mas ao contrário de vetores Magic xpa, que possuem tamanho dinâmico, vetores .NET precisam ter seu tamanho máximo definido na sua instanciação. No Magic xpa, um vetor .NET é definido adicionando-se “[ ]” na definição do tipo. O tamanho do vetor deve ser definido na instanciação do objeto.
  • 24. Manipulando Exceções Todas as exceções que possam ocorrer no acesso a objetos .NET são tratadas internamente pelo Magic xpa e não são propagadas (throw) para os programas. As funções DNExceptionOccurred() e DNException() permitem consultar o status do último acesso ao .NET realizado pelo Magic xpa. Se DNExceptionOccurred() retornar "verdadeiro", o último acesso gerou uma exceção .NET. Neste caso, podemos usar DNException() para ter acesso a este objeto que descreve a exceção.
  • 25. Usando Código .NET Além de manipular objetos .NET nativamente nos programas Magic xpa, é possível também escrever trechos de código .NET diretamente em C# ou VB.NET, e utilizá-los. Isso é feito através do comando "Invoke .NET". O código escrito é compilado pelo .NET CLR e o Magic xpa Studio salva este código como parte do programa. Durante a execução, o código já compilado é acionado pelo Magic xpa Deployment.
  • 26. Controles .NET com “DataView=Yes” Alguns controles .NET possuem uma propriedade chamada “DataSource” que define a fonte dos dados a serem apresentados. Se estes controles tiverem a sua propriedade DataView definida como Yes, o Magic xpa converte automaticamente o DataView do programa em DataSource .NET, para ser utilizado pelo controle. * exige Preload View=Yes
  • 27. Controles .NET com “DataBind” Quando os controles .NET possuem a regra de DataBind definida, alterações nas variáveis Magic xpa são refletidas automaticamente no controle .NET e vice- versa: alterações no controle .NET se refletem na variável Magic xpa.
  • 28. Lidando com a interface IDisposable Objetos .NET que implementam a interface “IDisposable” sinalizam que estão trabalhando com recursos críticos do sistema operacional e que devem ser liberados o mais rápido possível. Isso pode ser feito invocando-se o método Dispose() do objeto instanciado. No Magic xpa isso também deve ser realizado pelo desenvolvedor, por exemplo na Task Suffix. Exemplo: objeto FileStream.
  • 29. Migrando Controles ActiveX Controles ActiveX não podem ser utilizados diretamente em formulários de programas do Magic xpa, porque estes formulários são do tipo .NET. Estes controles precisam primeiro ser convertidos em “.NET User Controls”. Isso é feito com o utilitário AxImp da MicroSoft. Além da biblioteca gerada durante a conversão, o controle ActiveX ainda precisa estar instalado nas máquinas.
  • 30. Obrigado e até o próximo http://mss.magicsoftware.com.br