GD Access    GD Access    Grupo de Discussão  Ir para Categorias  Grupos técnicos  Ir para Fóruns  Access    Rodar macros do Extra (mainframe) a partir do access 97
Go
Novo
Procurar
Notificar
Ferramentas
Responder
  
-star Rating Vote!  Login/Cadastrar 
Programador Pleno

Figura de  Discipulo
postado
Alguem sabe como rodar macros a partir do access 97.


MTeles
Access 97 & 2mil

Tende em voz o mesmo sentimento que também teve Cristo Jesus, que sendo na forma de Deus, não teve por usurpação o ser igual a Deus algo que se devia apegar, antes a Si mesmo esvazio, assumindo a forma de servo, tornando-se em semelhança de homem, achando-se na figura de homem, sendo obediente até a morte e morte de cruz.(Filipensses 2:5-8) Eu amo essa cruz!
 
Postagens: 165 | Localização: Recife, Brasil | Registrado: 26 August 2005Reply With QuoteEditar ou Apagar MensagemReport This Post
Programador Júnior

postado Hide Post
Não sei se é Isso que você esta procurando . O exemplo a seguir conecta o access com o Extra e possibilita tato a pesquisa como a alimentação automática de dados no Extra (mainframe)


Cole esse código em um módulo qualquer


Option Compare Database
Option Explicit

Global Sistema As Object, Sess As Object
Global SessionName As String
Global MyScreen
Const ErrorConexão = 999999

Function HConectado()
On Error GoTo ErrConect
Set Sistema = CreateObject("EXTRA.System")
Set Sess = Sistema.ActiveSession
Set MyScreen = Sess.Screen
err.Clear
If MyScreen.OIA.ConnectionStatus = 1 Then
HConectado = True
Else
ErrConect:
HConectado = False
DoCmd.Hourglass False
MsgBox "VERIFICAR:HOUVE ERRO NA CONEXÃO COM O MAINFRAME", , "CONEXÃO MICRO<>MAINFRAME"
HDesconectar
DoCmd.Hourglass False
End
End If
End Function
Function HDesconectar()
Set Sistema = Nothing
Set Sess = Nothing
Set MyScreen = Nothing
End Function
Function HPF(PFnr As Integer)
Dim PF As String
If HConectado = True Then
PF = "<" & "PF" & PFnr & ">"
HPF = MyScreen.SendKeys(PF)
MyScreen.WaitHostQuiet (100)
End If
HDesconectar
End Function
Function HEnter()
If HConectado = True Then
MyScreen.SendKeys ("<Enter>")
MyScreen.WaitHostQuiet (100)
End If
HDesconectar
End Function
Function HPA1()
If HConectado = True Then
MyScreen.SendKeys ("<PA1>")
MyScreen.WaitHostQuiet (150)
End If
HDesconectar
End Function
Function HLeitura(Linha As Integer, Coluna As Integer, Tamanho As Integer)
If HConectado = True Then
HLeitura = MyScreen.GetString(Linha, Coluna, Tamanho)
End If
HDesconectar
End Function
Function HEscreve(Texto As String, Linha As Integer, Coluna As Integer)
Dim TextoEscrito
If HConectado = True Then
HEscreve = MyScreen.PutString(Texto, Linha, Coluna)
End If
TextoEscrito = Len((Texto))
TextoEscrito = MyScreen.GetString(Linha, Coluna, TextoEscrito)
' If TextoEscrito <> Texto And Texto <> "x1" And Trim(Texto) <> Forms!dadosnf!Posipi Then
' MsgBox "NÃO HOUVE POSSIBILIDADE DE ESCREVER SEU TEXTO COMPLETAMENTE", , "CONEXÃO MICRO<>MAINFRAME"
' HDesconectar
' DoCmd.Hourglass False
' End
' End If
HDesconectar
End Function
Function HIndicaLur()
If HConectado = True Then
HIndicaLur = Sess.Name
End If
HDesconectar
End Function

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

Depois é só criar seu procedimento ,

No exemplo abaixo eu leio os campos de um formulário e transfiro as informações para o extra .
Você pode usar a mesma função para recodset fazendo as adaptações necessárias

Sintaxe das Coordenadas de leitura ou ditação
Hleitura(X,Y,Z) = Lê extra nas coordenadas X=Coluna , Y=Linha , Z=Qtde de caracteres a serem lidos
HEscreve (X,Y,Z)= Digita campo do access no Extra X=campo do form ou Tab "me.campox" Y=linha Z=Coluna


Private Sub Enter_Click()
Dim erro As String
If HLeitura(2, 27, 27) <> "CAPTACAO REFUGO DE MATERIAL" Then
MsgBox "Favôr Posicionar a tela do MAINFRAME na Tela de captação de refugo ...!", vbCritical, " *** A T E N Ç Ã O *** "
Exit Sub
End If
'Digitação dos Itens Basicos

HEscreve Me.Nr_da_FIRE, 9, 8
HEscreve Me.nr, 8, 8
HEscreve Me.QtdeRef, 8, 39
If Me.DC <> "" Then
HEscreve Me.DC, 8, 75
End If
HEscreve Me.TiDe, 8, 61
HEscreve Me.Almox, 9, 40
HEscreve Me.[Centro de Custo Debito], 10, 8
HEscreve Me.CodRefugo, 10, 24
If Me.Operaçao <= 9 Then
HEscreve "000", 10, 59
HEscreve Me.Operaçao, 10, 62
End If
If Me.Operaçao > 9 Then
If Me.Operaçao <= 99 Then
HEscreve "00", 10, 59
HEscreve Me.Operaçao, 10, 61
End If
End If
If Me.Operaçao > 99 Then
If Me.Operaçao <= 999 Then
HEscreve "0", 10, 59
HEscreve Me.Operaçao, 10, 60
End If
End If
If Me.Operaçao > 999 Then
HEscreve Me.Operaçao, 10, 59
End If
If Me.Colo <> "" Then
HEscreve Colo, 11, 40
End If

HEnter 'Tecla enter do Mainframe

If HLeitura(23, 2, 33) <> "FICHA(S) DE REFUGO PROCESSADA(S)." Then ' Verifica consistencia do Mainframe
MsgBox "Ficha Não Foi Captada Pelo Mainframe , Favôr Verificar dados...!", vbCritical, " *** A T E N Ç Ã O *** "
Exit Sub
End If
'eMail - Bloqueado envio de e-mail para chefia
DoCmd.GoToRecord , , acNewRec 'Se tudo ocorreu normalmente , posiciona tela para nova
'captação .
Me.Data.SetFocus
End Sub

Boa Sorte !

"JÁ QUE CADA VEZ MAIS AS MULHERES ESTÃO INDO BUSCAR SEUS
DIREITOS, BEM QUE NA VOLTA PODERIAM TRAZER UMA CERVEJA."
 
Postagens: 85 | Localização: Santo André - SP | Registrado: 12 June 2002Reply With QuoteEditar ou Apagar MensagemReport This Post
Programador Pleno

Figura de  Discipulo
postado Hide Post
Valeu Camarada!

Você sabe sobre a conexão em PCOMM?


MTeles
Access 97 & 2mil

Tende em voz o mesmo sentimento que também teve Cristo Jesus, que sendo na forma de Deus, não teve por usurpação o ser igual a Deus algo que se devia apegar, antes a Si mesmo esvazio, assumindo a forma de servo, tornando-se em semelhança de homem, achando-se na figura de homem, sendo obediente até a morte e morte de cruz.(Filipensses 2:5-8) Eu amo essa cruz!
 
Postagens: 165 | Localização: Recife, Brasil | Registrado: 26 August 2005Reply With QuoteEditar ou Apagar MensagemReport This Post
Programador Júnior

postado Hide Post
Nunca trabalhei com o Pcom ,na empresa que trabalho usamos o emulador Extra
que esta em vias de ser substituido pelo Mocha,se você tiver algum material sobre esse emulador e puder dispor eu agradeceria .
 
Postagens: 85 | Localização: Santo André - SP | Registrado: 12 June 2002Reply With QuoteEditar ou Apagar MensagemReport This Post
 Tópico Anterior | Próximo Tópico Powered by Eve For Enterprise  
 

GD Access    GD Access    Grupo de Discussão  Ir para Categorias  Grupos técnicos  Ir para Fóruns  Access    Rodar macros do Extra (mainframe) a partir do access 97

©