Changes between Version 7 and Version 8 of WF/Conexaocommainframe
- Timestamp:
- 08/22/07 14:37:59 (17 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
WF/Conexaocommainframe
v7 v8 1 = Conexão com Mainframe = 2 [[TOC(heading=Workflow,depth=1,WF/Changelog,WF/Documentacao,WF/Instalacao,WF/Links,WF/Propostas,WF/Recursos)]] 3 1 4 == Classe: wf_natural == 5 2 6 Esta classe tem a finalidade de ler dados do ambiente mainframe realizando comunicação através do protocolo Jasppion (Java Active Server Page Package for Internet On Demand) desenvolvido pela CELEPAR. 3 7 4 5 6 8 === Métodos === 7 9 8 === = configure ====10 === configure === 9 11 10 12 '''Descrição:''' Realiza a configuração básica do objeto. … … 26 28 [$environment]: Ambiente onde está localizado o sub-programa. 'D' (desenvolvimento) ou 'P' (produção). 27 29 28 29 30 30 '''Retorno''': <nenhum> 31 31 … … 33 33 34 34 {{{ 35 36 35 $natural = wf_create_object("wf_natural"); 37 36 38 37 $natural->configure("SUBPROGR", "senha", "10.15.61.10", 0316, "SUB", "SENHA", 'D'); 39 40 }}} 41 42 ---- 43 44 ==== setDBGatewayProtocol ==== 38 }}} 39 40 ---- 41 42 === setDBGatewayProtocol === 45 43 46 44 '''Descrição:''' Realiza a escolha do formato da transação (DBCon ou DBGateway) no mainframe, utilizando o protocolo Jasppion. 47 45 48 49 50 46 '''Formato DBCon:''' 51 47 52 48 Esta transação executa no mainframe um programa chamado JASPIN. É um tipo de chamada mais performática, visto que está limitado a 32Kb de transferência de dados, limitação do DBCon. A partir do momento em que o DBCon passar a tratar mais que 32Kb o JASPIN automaticamente irá tratar este tamanho. O JASPIN não tem limitação de tamanho de dados. 53 49 54 55 56 50 '''Formato DBGateway:''' 57 51 58 52 Esta transação executa no mainframe um programa chamado JASPPION. É um tipo de chamada menos performática, visto que ela devolve uma quantidade ilimitada de registros de dados, uma vez que o JASPPION não tem limitação de tamanho de dados. No mainframe cada registro formatado no sub-programa natural como se fosse uma linha de um Record Set e é devolvido ao requisitante. 59 53 60 61 62 54 '''Parâmetros:''' 63 55 64 56 [$dbGateway]: Por default, o formato da transação é DBCon, a não ser que este seja alterado através da chamada do método setDBGatewayProtocol(). Se for necessário retornar ao formato DBCon, pode-se setar este parâmetro para false quando o método for invocado. 65 57 66 67 68 58 '''Retorno''': <nenhum> 69 59 … … 71 61 72 62 {{{ 73 74 63 $natural->setDBGatewayProtocol(); 75 76 64 }}} 77 65 78 66 '''Exemplo de uso (2):''' 79 67 80 {{{$this->natutal->getMSG(); 68 {{{ 69 $this->natutal->getMSG(); 81 70 82 71 $natural->setDBGatewayProtocol(false); // Seta formato de transação para DBCon 83 84 }}} 85 86 ---- 87 88 ==== execute ==== 72 }}} 73 74 ---- 75 76 === execute === 89 77 90 78 '''Descrição:''' Conecta ao mainframe e captura os dados requisitados … … 97 85 98 86 {{{ 99 100 87 $natural->execute(); 101 102 }}} 103 104 ---- 105 106 ==== getRC ==== 88 }}} 89 90 ---- 91 92 === getRC === 107 93 108 94 '''Descrição:''' Retorna o código do erro ocorrido durante a requisição. Se o retorno for zero nenhum erro ocorreu. … … 115 101 116 102 {{{ 117 118 103 $natural->getRC(); 119 120 }}} 121 122 ---- 123 124 125 126 ==== getMSG ==== 104 }}} 105 106 ---- 107 108 === getMSG === 127 109 128 110 '''Descrição:''' Retorna a explanação do erro quando o getRC() é diferente de zero. … … 135 117 136 118 {{{ 137 138 119 $natural->getMSG(); 139 140 }}} 141 142 ---- 143 144 ==== getDataParameter ==== 120 }}} 121 122 ---- 123 124 === getDataParameter === 145 125 146 126 '''Descrição:''' Retorna os dados obtidos do mainframe em formato String (formato devolvido pelo mainframe) … … 153 133 154 134 {{{ 155 156 135 $natural->getDataParameter(); 157 158 }}} 159 160 ---- 161 162 ==== configure!ResultSet ==== 136 }}} 137 138 ---- 139 140 === configure!ResultSet === 163 141 164 142 '''Descrição:''' Para facilitar a manipulação dos dados (originalmente em string), pode ser configurado um !ResultSet para execução de cada sub-programa no mainframe. … … 175 153 176 154 {{{ 177 178 155 $natural->configure!ResultSet(200, array("id" => 5, "nome" => 30) ); 179 180 156 }}} 181 157 … … 186 162 !ResultSet é um objeto que pode ser acessado através da classe wf_nature e que é construído após o método configure!ResultSet ser invocado. 187 163 188 189 190 164 === Métodos === 191 165 192 === = getNextRow ====166 === getNextRow === 193 167 194 168 '''Descrição:''' Retorna a próxima linha dentro do set de registros … … 201 175 202 176 {{{ 203 204 177 $row = $natural->ResultSet->getNextRow(); 205 178 206 179 echo $row['id']; // O mesmo resultado pode ser obtido utilizando o método getFieldByName. 207 208 }}} 209 210 ---- 211 212 ==== getFieldByName ==== 180 }}} 181 182 ---- 183 184 === getFieldByName === 213 185 214 186 '''Descrição:''' Captura dado de um campo específico da linha corrente no !ResultSet … … 221 193 222 194 {{{ 223 224 195 $natural->ResultSet->getNextRow(); 225 196 226 197 echo $natural->resultSet->getFieldByName("id"); 227 228 198 }}} 229 199 … … 233 203 234 204 {{{ 235 236 205 / * 237 206 * Neste exemplo o formato de arquivo retornado pelo mainframe contém 2 campos de tamanho 5 e 30, respectivamente. … … 243 212 $natural->execute(); 244 213 245 246 214 // Se não contém nenhum erro 247 215 … … 273 241 ---- 274 242 275 '''OBS''': [] identificam os parâmetros opcionais .243 '''OBS''': [] identificam os parâmetros opcionais