ManualExportacao Thrift E-SUSABv1 3

31
Ministério da Saúde / SAS / Departamento de Atenção Básica Sistema e-SUS Atenção Básica Manual de Exportação - API Thrift Este documento apresenta o modelo de integração do Sistema e-SUS AB com outros sistemas informatizados que estruturam o processo de trabalho das equipes de atenção básica em municípios com sistemas próprios. Como eixo central tratamos das bibliotecas de comunicação Apache Thrift e das APIs do e-SUS AB para efetivar a comunicação entre os sistemas. API Thrift e-SUS AB Versão 1.3 Capítulo 1. Introdução à Estratégia e-SUS AB 1.1 Sistema com Coleta de Dados Simplificada 1.1.1 Cadastro da Atenção Básica 1.1.2 Fichas de Atendimento 1.1.3 Sistema de Software e-SUS AB com CDS 1.2 Sistema com Prontuário Eletrônico do Cidadão 1.2.1 Requisitos de um Prontuário Eletrônico para a AB 1.2.2 Sistema de Software e-SUS AB com PEC 1.3 SISAB 1.3.1 Fluxo de Transmissão de Dados do SISAB Capítulo 2. Modelo de Troca de Informação do e-SUS AB 2.1 Troca de informação entre o sistema com CDS e com PEC 2.2 Coleta e envio das informações para o SISAB 2.3 Compartilhamento hierárquico dos dados do Sistema e-SUS AB Capítulo 3. Modelo de Integração 3.1 Apache Thrift 3.1.1 Arquitetura do Thrift 3.2 APIs Thrift do Sistema e-SUS AB 3.2.1 Gerando um Arquivo para o Sistema e-SUS AB Capítulo 4. API Thrift Cidadão 4.1 Estrutura da API Thrift Cidadão 4.2 Exemplo de uso da API Thrift Cidadão Capítulo 5. API Thrift RAS 5.1 Estrutura da API Thrift RAS 5.2 Exemplo de uso da API Thrift RAS Conclusão Referências Bibliográficas

description

Manual de apoio de integração do Thrift com sistema proprio.

Transcript of ManualExportacao Thrift E-SUSABv1 3

Ministrio da Sade / SAS / Departamento de Ateno Bsica Sistema e-SUS Ateno Bsica Manual de Exportao - API Thrift Estedocumentoapresentaomodelode integraodoSistemae-SUSABcomoutros sistemasinformatizadosqueestruturamo processodetrabalhodasequipesdeateno bsicaemmunicpioscomsistemasprprios. Comoeixocentraltratamosdasbibliotecasde comunicao Apache Thrift e das APIs do e-SUS ABparaefetivaracomunicaoentreos sistemas. API Thrift e-SUS AB Verso 1.3 Captulo 1. Introduo Estratgia e-SUS AB 1.1 Sistema com Coleta de Dados Simplificada 1.1.1 Cadastro da Ateno Bsica 1.1.2 Fichas de Atendimento 1.1.3 Sistema de Software e-SUS AB com CDS 1.2 Sistema com Pronturio Eletrnico do Cidado 1.2.1 Requisitos de um Pronturio Eletrnico para a AB 1.2.2 Sistema de Software e-SUS AB com PEC 1.3 SISAB 1.3.1 Fluxo de Transmisso de Dados do SISAB Captulo 2. Modelo de Troca de Informao do e-SUS AB 2.1 Troca de informao entre o sistema com CDS e com PEC 2.2 Coleta e envio das informaes para o SISAB 2.3 Compartilhamento hierrquico dos dados do Sistema e-SUS AB Captulo 3. Modelo de Integrao 3.1 Apache Thrift 3.1.1 Arquitetura do Thrift 3.2 APIs Thrift do Sistema e-SUS AB 3.2.1 Gerando um Arquivo para o Sistema e-SUS AB Captulo 4. API Thrift Cidado 4.1 Estrutura da API Thrift Cidado 4.2 Exemplo de uso da API Thrift Cidado Captulo 5. API Thrift RAS 5.1 Estrutura da API Thrift RAS 5.2 Exemplo de uso da API Thrift RAS Concluso Referncias Bibliogrficas Ministrio da Sade / SAS / Departamento de Ateno Bsica Captulo 1. Introduo Estratgia e-SUS AB A Estratgia e-SUS Ateno Bsica apoiada essencialmente por dois sistemas, o SistemadeInformaoemSadeparaaAtenoBsica(SISAB),osistemade informaonacional,eoSistemae-SUSAtenoBsica,compostoporsistemasde softwarequeinstrumentalizamoprocessodetrabalhonasUBS.Comoestratgia, fundamentalqueoe-SUSABgarantaumprocessoamploepadronizadodetrocade informaesentresistemasemvriosnveisdeatenoenoprprionveldaateno bsica. Aomesmotempo,paraapoiaraefetivaodocuidadocontinuado,aEstratgia e-SUS AB precisa de uma estrutura que atue sobre um registro longitudinal dos eventos de sadedeumcidadoindependentedosistemadesoftwarequeasequipesdesade utilizem para fazer gesto local do servio de sade, e portanto se faz necessrio uma base deRegistroEletrnicodeSade(RES)queminimamentedialoguecomasnecessidades das Redes de Ateno Sade organizadas de forma intermunicipal e interestadual. ODepartamentodeAtenoBsica,doMinistriodaSade,comoobjetivode incentivarousodeTecnologiasdeInformaoeComunicaoemSadenaAteno Bsica, vm apoiando o desenvolvimento de tecnologias que atendam as necessidades de gesto da ateno bsica, em especial, nos processos de gesto do cuidado e gesto por resultados. Caractersticaimportantedesseprocessoainversodoobjetivoprincipalna construodasferramentaseinstrumentosqueapoiamosprocessosdegesto.Este projetoestdandofocoasnecessidadeslocaisedaesferamunicipal.Nessaperspectiva entendendoqueamelhoriaequalificaodoprocessodetrabalhodasequipesdesade daatenobsicaintegradasnasRedesdeAtenoSadedevemtrazerresultados significativos na gesto estadual e federal da AB com resultados promissores. A Estratgia e-SUS AtenoBsica, nesse contexto, busca por meiodos Sistemas e-SUSABimplementaressastecnologiasparatornaroprocessodetrabalhodasequipes desadeedegestomaisfceis,reduzindootempogastocomaburocraciadousoe alimentaodossistemasdeinformaoemsadequefazeminterfacecomaAB.Por outroladoaestratgiabuscagarantirqueodesenvolvimentodassoluesavancemna adoodepadresinternacionaisdareadeinformticaemsade,ecomissoampliara interoperabilidade entre os sistemas gerencias da sade e de outras reas no municpio. Em especial o Sistema e-SUS AB composto pelo Sistema com Coleta Simplificada deDados(CDS)eoSistemacomPronturioEletrnicodoCidado(PEC),pormpara cenrios de informatizao distintos, como vimos em outros documentos. Ministrio da Sade / SAS / Departamento de Ateno Bsica Nas prximas sees, resumidamente, entenderemos como funciona cada software doSistemae-SUSABeoutrosdetalhesqueajudemnacompreensodoprocessode integrao dos dados. 1.1 Sistema com Coleta de Dados Simplificada OsistemacomColetadeDadosSimplificada(CDS)foiformuladoparaatenders equipesdeatenobsicalotadasemUnidadesBsicasdeSade(UBS)queaindano possuem condies de infraestrutura tecnolgica de informtica para a utilizao do sistema e-SUSABcomPEC,verseo2.3.Caracteristicamenteumsistemadetransio,para que seja possvel em tempo mais apropriado implantar um sistema com PEC. O Sistema com CDS, na verso atual (v 1.3), utiliza sete fichas para o registro das informaes: Cadastro Domiciliar Cadastro Individual Ficha de Atendimento Individual Ficha de Atendimento Odontolgico Individual Ficha de Atividade Coletiva Ficha de Procedimentos Ficha de Visita Domiciliar Ficha de Atividade Coletiva Essasfichasdeveroserdigitadasnosistemadesoftwaree-SUSABcomCDS. Comoumsistematransitrioestenotemapretensodeserumsistemaexaustivoem relaoasnecessidadesdeinformaodasequipesdeAB,noentantoorganizaum conjuntoessencialdeinformaesqueestruturamocadastrodaABeosregistrosde atendimentos realizados pelas equipes. 1.1.1 Cadastro da Ateno Bsica O Cadastro Nacional do Sade (CNS), ou simplesmente CadSUS, um sistema de informaodebasenacionalquepermiteaidentificaodosusuriosdasaese serviosdesadeatravsdeumnmero,nicoparacadacidado,vlidoemtodoo territrio nacional. Coordenado pelo Ministrio da Sade, esse sistema permite a vinculao dousurioatenorealizadapelasaeseserviosdesade,aoprofissionaleao estabelecimentodesaderesponsvelpelasuarealizao.tambmoinstrumentode informatizao necessrio para a organizao da rede de ateno sade e de gesto do SUS, atravs do acesso a uma base nacional de dados de sade do cidado. A Portarian 940/GM/MS,de28deabrilde2011,regulamentaoSistemaCartoNacionaldeSade (Sistema Carto). Ministrio da Sade / SAS / Departamento de Ateno Bsica O Cadastro da Ateno Bsica (AB) uma extenso do CadSUS no que se refere aosdadosqueapoiamasequipesdeABamapearascaractersticasdesade,sociaise econmicasdapopulaoadscritaaoterritriosobsuaresponsabilidade.Estecadastro est organizado em duas dimenses: domiciliar e individual. Ocadastrodomiciliaridentificaascaractersticassociossanitriasdosdomiclios noterritriodasequipesdeAB.Estecadastrobuscaidentificar,ainda,situaesde populaesdomiciliadasemlocaisquenopodemserconsideradosdomiclio,por exemplo, situao de rua (IBGE, 2009), no entanto devem ser monitorados pela equipe de sade.Nocadastrodomiciliarovnculodocidadoaoseudomicliofeitopormeiodo CadSUSdoresponsvelfamiliar.Podendoestecadastroservinculadoamaisdeum responsvel familiar e portanto a mais de um ncleo familiar. O cadastro individual identifica as caractersticas sociodemogrficas, problemas e condiesdesadedosusuriosnoterritriodasequipesdeAB.Essecadastro compostoporduaspartes,sendoelas:informaesdeidentificao/sociodemogrficase condies de sade autorreferidas pelo usurio. 1.1.2 Fichas de Atendimento No sistema com coleta simplificada todas as fichas de atendimento passam a ter um cabealhoidentificandoaUnidade,aEquipeeoProfissionalquerealizouoatendimento. Alm disso possvel registrar se foi um atendimento compartilhado com outro profissional. Damesmaforma,emtodasasfichaspossvelidentificarosusuriosquereceberamo atendimento pelo nmero do CadSUS e ainda o local do atendimento. Afichadeatendimentoindividualcaracterizaoresumodoatendimentodenvel superior, nesta ficha que os profissionais de nvel superior devem informar o que ocorreu noatendimento.Algumasinformaessofundamentaisnestaficha,taiscomotipode atendimento, problema/condio avaliada e conduta do atendimento. Complementar a esta fichavemafichadeprocedimentos,ondesepodemregistrarosprocedimentose pequenascirurgiasrealizadasnoatendimento.Afichadeprocedimentosaindautilizada para registrar procedimentos especficos realizados por tcnicos de nvel mdio da unidade. Ministrio da Sade / SAS / Departamento de Ateno Bsica ExcepcionalmenteparaosprofissionaisdaSadeBucal,aindapodeserusadaa fichadeatendimentoodontolgicoindividual,onderegistramossimilarmenteotipode atendimento,otipodaconsultaodontolgica,registrosdevigilnciaemsadebucalea conduta do atendimento, por exemplo se foi agendada nova consulta na AB ou se o cidado foi encaminhado para outro servio. A ficha de visita domiciliar busca por meio de sua estrutura coletar as informaes sobrearealizaodevisitasdomiciliaresdoagentecomunitriodesade(ACS).Assim como as outras fichas, passam a ter o registro individualizado. Devemos destacar que esta fichapassaaserexclusivaparaasvisitasrealizadaspelosACS,quandofornecessrio registrarumatendimentonodomiclio,realizadaporprofissionaldenvelsuperior, possvelusarafichadeatendimentoindividualinformandonolocaldeatendimentocomo Domiclio, caracterizando assim um atendimento em domiclio. UmanovidadeparaoregistrodeaesdaABafichadeatividadecoletiva, usadapararegistrartantoaesadministrativas,comoreuniesdeequipe,quantoaes desade,comoatividadescoletivasdepromoodesadeouaindaatendimentoem grupo. Excetoafichadeatividadecoletiva,asoutrasfichaspassamaregistrarvrios atendimentosnamesmaficha.Registradosnavertical(emcolunas)asfichasbuscamum registro bastante objetivo e sem a pretenso de ser exaustivo nas opes de preenchimento rpido,queemgeralsoacompanhadosporcamposOutrosondepossvel,quando necessrio,registraroutrasaesusandocodificaeseclassificaesutilizadaspelos sistemas de informaes vigentes. 1.1.3 Sistema de Software e-SUS AB com CDS Sistemaqueestruturaadigitaodocadastroedasfichasdeatendimento,o Sistema com CDS conta com uma estrutura de fcil instalao e multiplataforma, podendo serutilizadotambmemconjuntocomoSistemae-SUSABcomPECatravsdomdulo CDS. O sistema e-SUS AB com CDS exclusivo para digitao, portanto no tem funes gerenciais. Este sistema possui um banco de dados embarcado, portanto no necessrio fazerumainstalaodeumSGBDemseparado.Porterfuncionalidadeslimitadas,as necessidadesdessaaplicao,norecomendadooarmazenamentodeumvolume grande de informaes no Sistema com CDS. Ministrio da Sade / SAS / Departamento de Ateno Bsica Figura 1.1: Tela Inicial do Sistema e-SUS AB com CDS 1.2 Sistema com Pronturio Eletrnico do Cidado OsistemacomPronturioEletrnicodoCidado(PEC)foiformuladoparaatender s equipes de ateno bsica lotadas em Unidades Bsicas de Sade (UBS) parcialmente outotalmenteinformatizadas.UmsistemacomPronturioEletrnicoumsistemaque ampliaintegraoegestodocuidadopelosprofissionais,esoindispensveisdoponto de vista de gerar valor de uso aos sistemas de informao em sade. Noentanto,umpronturioeletrnicopodeserimplementadodediversasformas, considerandodiferentesprocessosdetrabalho,aoquecabenestemomentoapontar algumasdiretrizesusadaspelosistemaquebuscagarantiraatenointegralsadedo paciente da forma que se preconiza na PNAB. 1.2.1 Requisitos de um Pronturio Eletrnico para a AB Umsistema com pronturio eletrnico para a AB deve prover todas as informaes efunesquedemsuportesatividadesessenciaisinscritasnaprticadesade,na prticadaanlisedacondiodesadedapopulaoeporfim,nasaesdegestoda ABoquerequerlidarcomoplanejamentoeaprogramaodasaes,ocontrolede agendas,procedimentos,estoquesdemateriais,equipamentos,omonitoramentoea avaliaodeprocessoseresultadosetc.Isto,controlaraspectosquerepresentamas condiesdeorganizaoefuncionamentodosserviosdesade.Nessesentido apresentam-seabaixoprocessosessenciaisparaodesempenhodasfunesdaAB destacadosporrequerereminovaesedesenvolvimentoparasuporteporsistemade Ministrio da Sade / SAS / Departamento de Ateno Bsica software:territorializao,acolhimento,agendamento,gestodocuidadoegestodo acesso e qualidade. 1.2.2 Sistema de Software e-SUS AB com PEC OSistemacomPECumsistemacomplexo,poisbuscaestruturaroregistrodo conjuntodeinformaesqueapoiamaorganizaoetrocadeinformaoentreos profissionaisdasequipesdeAB.importantedestacarqueesteumsistemacom pronturio eletrnico, ou seja, no se limita a ser apenas o registro no pronturio eletrnico e amplia o conjunto de ferramentas e funcionalidades para atender a todas as diretrizes de um sistema de informao para a AB. Osistema,comopodemosvernaimagemdesuatelainicial,naversoatual,j implementa os seguintes mdulos: Mdulo Cidado: contempla o cadastro do cidado e a integrao com o CadSUS. TodocidadoatendidonoSistemacomPECprecisadeumcadastro,mesmoque este ainda no possua um CNS. MdulodeAgenda:contemplaasnecessidadesdeconfiguraodeagendados profissionais,marcaodeconsulta,controledechegadaecontroledefaltososda agenda,almdasreservasdehorriospordemandasadministrativasede atividades programticas da equipe / profissional. MdulodeAtendimentoIndividual:contemplaocontroledelistadeatendimento (fluxo do cidado na unidade), acolhimento demanda espontnea (insero na lista de atendimento e escuta inicial), pronturio eletrnico (Folha de Rosto, SOAP, Lista de Problemas, etc), entre outras funcionalidades. Mdulo de Relatrios: contempla a gerao de relatrios de cadastro, situao de sade, atendimentos do territrio, entre outros. MduloAdministrao:contemplaocadastrogeraleconfiguraodosistema, cadastro de unidade, cadastro do profissional (usurio do sistema), controle de perfil de usurio, importao dos dados do CNES, exportao do BPA, entre outros. Ministrio da Sade / SAS / Departamento de Ateno Bsica Figura 1.2: Tela Inicial do Sistema e-SUS AB com PEC 1.3 SISAB A portaria n 1.412, de 10 de julho de 2013, instituiu o Sistema de Informao em SadeparaaAtenoBsica(SISAB)comoonovosistemadeinformaonacionalda atenobsica,oqual substituioatualSistemadeInformaodaAtenoBsica(SIAB), quepermaneceemumperododetransioatMaiode20151.Umadasprincipais caractersticasdessenovosistemaoregistrodeinformaesindividualizadas,pois oferece ao gestor uma viso mais fidedigna das aes das equipes de sade em relao a cada cidado de seu territrio. Destaca-se, inicialmente, que tanto o Sistema com CDS quanto o Sistema com PEC fornecero as mesmas informaes ao SISAB. Para quem utiliza o Sistema e-SUS AB com PEC,oprpriosistemaseencarregardeorganizarasinformaesaseremenviadasao SISAB. Para os municpios que utilizam outros sistemas com pronturio eletrnico, tambm ser possvel gerar as informaes de acordo com o modelo de coleta simplificada (similar ao Sistema com CDS) e ento enviar os dados. Todos os dados do Sistema e-SUS AB so organizados no Mdulo Centralizador para envio ao SISAB, no prximo captulo abordamos com mais detalhes como esse processamento ocorre. Paraentendermelhorcomofuncionaofluxodetransmissodosdadosparao SISAB, na seo seguinte ampliamos a discusso contemplando as regras gerais de envio dos dados.

1PortariaN1.976,de12desetembro2014,defineoprazomximodetransioentreo SIAB e o SISAB. Ministrio da Sade / SAS / Departamento de Ateno Bsica 1.3.1 Fluxo de Transmisso de Dados do SISAB Ofluxodetransmissodosdadosparaonovosistemadeinformaosedde formasimilaraofluxodeenviodosdadosdoantigoSIABpelomunicpio.Estefluxo definidoemportariaanual,quedeterminaoprazomximodeenviodasinformaesdo sistema organizadas por competncia mensal, porm em fluxo contnuo. Figura 1.3: Esquema do fluxo de transmisso do SISAB ConformeilustradonaFigura1.3,comoregrageral,ascompetnciasfazemum recortedaproduodeinformaodentrodeummsdecompetnciaquecorresponde exatamente aos dias do ms em questo. Ao encerrar a competncia, o municpio ter do primeiroaovigsimodiadosmssubsequentecomoprazomximoparaenviarosdados para a base nacional e um prazo de at 3 ms para enviar correes da base. Ministrio da Sade / SAS / Departamento de Ateno Bsica Captulo 2. Modelo de Troca de Informao do e-SUS AB Osprocessosdetrocadeinformaesentresistema,oumesmode compartilhamentodosdados,soemmuitasocasiesdesafiadores.Comovimos,a Estratgiae-SUSABbuscapormeiodesistemasdesoftwaresintegradosavanarna soluodasnecessidadesdetrocadeinformaoentresistemas,sobretudoajudandoos municpios em suas atividades do cotidiano. Paramelhoravaliarasoluoapresentadanoprximocaptulo,importanteter clareza de quais situaes esto sendo tratadas e como estas se relacionam com o modelo deinformaes.Assituaesdescritasnestedocumento,jcontempladasnaverso1.3, so: 1.Troca de informao entre o sistema com CDS e com PEC; 2.Coleta e envio das informaes para o SISAB; 3.Compartilhamento hierrquico dos dados do Sistema e-SUS AB; Figura 2.1 - Imagem-objetivo da Troca de Informaes no Sistema e-SUS AB Ministrio da Sade / SAS / Departamento de Ateno Bsica 2.1 Troca de informao entre o sistema com CDS e com PEC A primeira situao descrita aqui versa sobre a necessidade de integrao entre os dadosdoSistemascomCDS,registradosporfichas,edoSistemacomPEC,registrados direto no sistema pelos profissionais de sade, por meio de ferramentas informazadas. Essa integrao estruturada para oferecer uma evoluo gradual da capacidade de registro de informao,aomesmotempoquedeveatenderaosistemadeinformaonacional,o SISAB. OdesenvolvimentodoSistemacomCDStevecomoorigemanecessidadede simplificar o registro do atendimento individualizado por fichas, dado que ainda temos uma boaparceladasUBSnoinformatizadas.Asimplificaodoregistropassouporuma anlise bastante criteriosa para evitar que o processo de registro seja mais caro (em relao ao tempo) que o prprio processo de trabalho no atendimento ao cidado. Outro critrio foi emrelaoanecessidadedemonitoramentodasaesdaABorientadoporumapauta essencial das aes da AB e de governo. Essa anlise resultou na necessidade da criao deblocosconsolidadospararegistrodeaesmuitofrequentes,ondeoregistro individualizado seria dificultoso, porm importante para o monitoramento das aes na AB. O Sistema com PEC avana no outro sentido, na perspectiva de eliminar o registros em fichas e formulrios de papel. E portanto busca reestruturar o trabalho dos profissionais daUBSpormeiodeferramentosinformatizadasqueestejamadequadasaoprocessode trabalho das equipes de AB como um todo. Como o sistema estrutura as ferramentas e no o registro, os mesmos blocos que no Sistema com CDS so consolidados, no Sistema com PECsoregistradosindividualmentepormeiodessasferramentas.Aomesmotempo,o Sistema com PEC demanda um conjunto de informaes que ajudam a estruturar o sistema desademunicipal,porexemplo,definindootempodeconsultaouorganizandoos usurios que fazem acesso ao sistema. Nestecontexto,precisamosentenderquaisosblocosdeinformaesso compatveisequaisnoso.AFigura2.2ilustraosblocosdeinformaesdossistemas destacando os grandes blocos e os documentos de troca de informao que so gerados a partir desses blocos. Como vemos na Figura 2.2, o Sistema e-SUS AB possui diferentes documentos de trocadedadosparaatenderacaractersticasparticularesdecadablocodosistema, gerando os seguintes documentos: CAD:geradoapartirdosdadosdeCadastrodaAB,umdocumentoquepermite compartilharasinformaesdecadastroporcidado,associadoaosdadosde domiclio e de situao auto-referida de sade do cidado; RAS: sigla para Registro de Atendimento Simplificado, gerado a partir dos eventos desadeindividualizadoseidentificados.Correspondeaumconjuntoessencialde Ministrio da Sade / SAS / Departamento de Ateno Bsica informaesquedevemsersuficientesparaatenderasdemandasdosistema nacional; RAC:siglaparaRegistrodeAtendimentoCompleto,tambmgeradoapartirdos eventosdesadeindividualizadoseidentificados,pormcomumconjuntode informaesmaisestruturadoquebuscaocompartilhamentodeinformaesde sistemascompronturioeletrnico.Estemodelototalmentecompatvelcomo modelo RAS. CONS: gerado a partir dos dados consolidados doSistema com CDS, estemodelo permiteocompartilhamentodessasinformaesapenasparacomplementar informaesdosistemanacional,noentantoparaossistemasquenotrabalham com dados consolidados este conjunto de informaes deve ser enviado via modelo RAS. CONF: gerado a partir dos dados de configurao e parametrizao do sistema com pronturioeletrnico,estemodelopossibilitaocompartilhamentodessas informaestantoparafinsdegestodesadequantoparaadministraodo sistema. Figura 2.2: Blocos de Informaes do Sistema e-SUS AB Comovimos,osdocumentosRAC,RASepartedoCONStemorigemnomesmo blocodeinformaes,oblocodeeventosdesadeindividualizados,sendoqueaoutra partedoCONS vem de eventosde sade sem registros individualizados. Na Figura2.3,a seguir, ilustramos a relao entre os trs documentos e sua origem no Sistema e-SUS AB, deixandomaisclaraarelaodesobreposiosemnticadosdocumentosRAC,RASe Ministrio da Sade / SAS / Departamento de Ateno Bsica CONS. importante no entanto perceber que o documento CONS pode ser gerado a partir dosdocumentosRACeRASpormeiodaagregaesdosdadosdessesdocumentos,ou mesmousandoasestruturaindividualizadas,pormsemidentificaodocidado. Obviamente, o inverso no possvel. Figura 2.3: Origem dos Documentos de Troca de Dados do Sistema e-SUS AB Vale ressaltar que na verso atual do sistema apenas os Modelos CAD (parcialmente), RAS e CONS de documentos de troca de informaes esto disponveis, os outros modelos esto em desenvolvimento e devem ser disponibilizados em verses futuras. 2.2 Coleta e envio das informaes para o SISAB A segunda situao de troca de informaes versa sobre a coleta e envio dos dados aoSISAB,osistemanacional.NestemomentoprecisamosterclaroqueoSISABtemo mesmo conjunto de informaes do Sistema com CDS, portanto, para garantir o envio dos Ministrio da Sade / SAS / Departamento de Ateno Bsica dados o sistema de origem deve ser capaz de gerar um conjunto de dados compatvel com esse sistema. Na estrutura preconizada pelo Sistema e-SUS AB, compete ao Mdulo CentralizadororganizarasinformaesaseremenviadasaoSISAB,portantoessemduloqueir processar os dados enviados ao Sistema e-SUS AB, independente da fonte de informao, podendoserdoSistemae-SUSABcomCDSoucomPEC,ouaindaqualqueroutro Sistema com Pronturio que atenda aos requisitos mnimos dos sistemas de pronturio para aABesejacompatvelcomomodelodeinformaoclnicaedemogrficadaAB.Logo, nonecessrioque ossistemasdeorigemgeremosdocumentosdetrocadedadosde acordo com o Sistema com CDS, bastando garantir um dos modelos a seguir: CAD + RAS (cadastro e registro simplificado) CAD + RAS + CONS (cadastro, registro simplificado e alguns dados consolidados) 2.3 Compartilhamento hierrquico dos dados do Sistema e-SUS AB Aterceirasituaofazrefernciaanecessidadedecompartilharosdadosdo Sistemae-SUSAB,comelemesmo(emrede).Considerandoosdiferentescenriosde implantao possvel que na grande maioria dos municpios a base seja descentralizadas, sendopossvelterdadosemUBSouDistritoSanitriosseparadosdoambientecentral. Essadescentralizaodemandaumaestruturadetransmissodosistema,entreabase local e central. Esseprocessodetransmisso,dentrodeumarededesistemadistribudos,com sistemasdesconectados,eventualmenteconectados,eventualmentedesconectadosou conectados a essa rede, deve ser o mesmo, alterando apenas a forma de envio dos dados: i) por arquivo ou ii) por internet. Lembrando que toda forma de transmisso de dados se d usando o modelo CAD + RAS, portanto, neste momento, mesmo que o municpio esteja usando o Sistema com PEC, os dados completos permanecero apenas na base local. Independentedocenrio,oparmetromximodetempoparatransmissodas basesdeverespeitarofluxodeenviodeinformaesaoSISAB,ouseja,umperodo mximo,nopiorcaso,dedesatualizaodasbasesdeumms,oquenspermite antecipar problemas e gerenciar melhor os conflitos. Ministrio da Sade / SAS / Departamento de Ateno Bsica Figura 2.6: Rede distribuda de instalaes do sistema AFigura2.6ilustradiferentesformasdeusaroSistemae-SUSABemrede, considerandoinstalaesdeSistemascomPECparaatenderasUBSeSistemascom CentralizadorparaorganizarosdadosdemaisdeumaUBS.Ailustraomostraemum primeirocasoduasUBS(AeB)transmitindosuasbasesparaumainstalao centralizadoraemumDistritoSanitrio.Obviamente,paraqueestedadoscheguemao CentralizadorMunicipalnecessrioqueainstalaodoDistritoSanitrioABesteja transmitindo dados para ele. Outro caso na rede uma UBS (C) que est transmitindo sua base diretamente com o Centralizador Municipal. E por ltimo uma UBS (D) que no possui uma base local e usa o Sistema com PEC diretamente no Centralizador Municipal. Este pequeno cenrio ilustrado na Figura 2.6 permite visualizar as cpias dos dados distribudos na rede de sistema. A UBS A e B possuem, alm da sua base local, mais duas cpias da informao de seus territrios, uma no Centralizador do Distrito AB e a outra no CentralizadorMunicipal.AUBSCtemapenasumacpianoCentralizadorMunicipal,ea UBSDnotemcpiadainformaoeficadependendoapenasdainstalaodo Centralizador Municipal. Comovimosanteriormente,competeaosmunicpiosacoordenaodaAB,logoo nvelmaisaltodecentralizaodosdadosdoSistemae-SUSABonvelmunicipal. Emalgunscasos,eprincipalmentepeladificuldadedealgunsmunicpiosdemanterum servidorcentralizadordoSistemae-SUSAB,osEstados,RegionaisdeSadeou Municpiosassociadospodemoferecerservidoresparaarmazenarfisicamenteosdados desses municpios. Ministrio da Sade / SAS / Departamento de Ateno Bsica Figura 2.7: Municpios usando Base Multi-Municipal Essasestruturas,foradomunicpio,soestruturasdeacessorestritoaogestor municipal,esochamadasdeSistemae-SUSABMulti-Municipal,ouseja,nouma instalao estadual ouregional, uma instalao municipalapenas otimizadapara melhor aproveitarosrecursoscomputacionaisdoservidorquedsuporteaosistemadesade municipal.NaFigura2.7ilustramosarelaoentreossistemasesuasbases,organizado detalformaquesejapossvelquetodososmunicpiosacessamasuainstalao centralizadora,cabendoaosprpriosmunicpiosestruturaremsuasredesdentrodoseu municpio.Lembrandoquecabenestetipodeestrutura,inclusive,oacessodiretoao Sistema e-SUS AB pelos profissionais de sade nas UBS (sem servidor local). Ministrio da Sade / SAS / Departamento de Ateno Bsica Captulo 3. Modelo de Integrao OSistemae-SUSABestusandooframeworkdecomunicaodaApacheThrift para implementar os recursos de Importao e Exportao dos dados para o sistema. Neste captuloentenderemosumpoucomaissobreesseframeworkealgunsconceitosque devem ser compreendidos para se fazer um processo mais rpido de exportao dos dados a partir dos sistemas prprios. Figura 3.1 Modelo de Integrao com Sistema Prprio usando Apache Thrift 3.1 Apache Thrift OApacheThriftumframeworkRPC(RemoteProcedureCall),ouseja,um conjunto de bibliotecas de sistema que auxiliam desenvolvedores a implementar chamadas deprocedimentosremotos,pormoferecendoumaestruturaparautilizaodemltiplas linguagens de programao entre clientes e servidores. Traduzidodoinglsparabrech,trazaintuiodoconceitodetrocadeobjetos oferecendo umambientedetroca deserviosentreaplicaespormeiodeumaestrutura paradesenvolvimentodeserviosescalveisentrelinguagenseoferecendonoapenas suporteageraodecdigoparavriaslinguagens,mastambmumapilhadesoftware que simplifica o desenvolvimento de servios relacionados rede de computadores. Antes de tornar-se um projeto de software livre do Apache, Thrift era uma biblioteca usadainternamentenoFacebookcriadapelosseusdesenvolvedoresjustamentepela necessidadedeoferecerserviosemdiferenteslinguagens.AtualmenteoApacheThrift usado por grandes desenvolvedores de software como Twitter e Linkedin. Abaixo alguns dos benefcios de se usar o Apache Thrift: Ministrio da Sade / SAS / Departamento de Ateno Bsica Serializaoentrelinguagenscommenorsobrecargadoqueasalternativas como SOAP, devido utilizao do formato binrio; A biblioteca leve, enxuta e limpa, sem estrutura para cdigo. No h arquivos de configurao XML; O formato de nvel de aplicao e de serializao so claramente separados, podendo ser modificados de forma independente; Osestilosdeserializaopredefinidosincluem:binrio,HTTP-friendlye binrio compacto; Semdependnciasdeconstruooudesoftwareno-padro.Nomistura licenas de softwares incompatveis; Oferecesuporteparavriaslinguagensdeprogramao(emnveis variados),incluindoJava,PHP,C/C++,Delphi,Python,Ruby,Smalltalk, Haskell, Erlang, Node.js, Go, D, entre outras; CompatvelcomplataformasdecomputaodistribudacomoApache Hadoop e Apache Cassandra. 3.1.1 Arquitetura do Thrift Aoseavaliarosdesafiosdainteraoentrelinguagensemumambientederede, alguns componentes-chave foram destacados no Thrift: Tipos:Umsistemadetipocomumdevemexistiremtodalinguagensde programao,semexigirqueodesenvolvedordoaplicativousetiposdedados Thrift personalizados ou tenha que escrever seu prprio cdigo de serializao. Transporte: Cada linguagem tem de ter uma interface comum para o transporte bidirecionaldedados.Osdetalhesdecomoumdeterminadotransporte implementadonodeveimportarparaodesenvolvedordoservio.Omesmo cdigo do aplicativo deve rodar sobre um fluxo sockets TCP, na memria ou em arquivos no disco. Protocolo:Tiposdedadosdevemteralgumamaneiradeutilizaracamadade transporteparacodificaredecodificarasimesmos.Maisumavez,o desenvolvedordoaplicativonoprecisasepreocuparcomestacamada.Seo serviousaumXMLouprotocolobinrioirrelevanteparaocdigoda aplicao.Tudooqueimportaqueosdadospossamserlidoseescritosde forma consistente e determinstica; Versionamento:Paraserviosrobustos,ostiposdedadosenvolvidosdevem fornecerummecanismoparacontroledeverso.Especificamente,deveser possveladicionarouremovercamposemumobjetooualteraralistade argumentos de uma funo sem qualquer interrupo do servio (ou pior, falhas de segmentao desagradveis); Processadores:Porfim,gerarumcdigocapazdeprocessarfluxosdedados para realizar chamadas de procedimento remoto em diferentes linguagens. Estascaractersticasderamasdiretrizesparaadefiniodeumaboaarquitetura, como ser descrito a seguir. Ministrio da Sade / SAS / Departamento de Ateno Bsica O Thrift implementa uma pilha (stack) de software que simplifica o desenvolvimento de aplicativos de comunicao em vrias linguagens. Conforme podemos ver na Figura 3.1, na parte inferior da pilha est a interface fsica de entrada e sada dos dados, podendo ser um fluxo de rede ou ainda um arquivo do sistema. Essa interface influencia os nveis mais altos da pilha. Ascamadasdetransporteeprotocoloquedefinemcomoosdadossomovidose quais formatos eles assumem, usando um processador, que contm os fluxos de entrada e sada.TBinaryProtocoldefineumprotocolobinrioeficienteparacomunicaoquepode ser usado sobre transporte TFileTransport que gera um arquivo para ser enviado ou salvo no disco, por exemplo. Nonvelsuperiorestotiposdeservidorquepodemserimplementadoscomo auxliodeThrift.Essaconfiguraopodeincluirumservidordeencadeamentonicopara depurao(TSimpleServer),umservidorHTTPquepodefornecerURLssemelhantesao REST(RepresentationalStateTransfer)usandoTHttpServer,ouumservidordevrios processosquebifurcaumprocessoparacadasolicitaorecebida(TforkingServer). Portanto,oThriftescritonoapenasparasimplificaracomunicaoentrevrias abordagens (protocolos e transportes), mas tambm para simplificar o desenvolvimento de servidor usando vrios estilos de servidor. Figura 3.1 Arquitetura cliente/servidor Apache Thrift API (Fonte: Wikipedia) Como visto nas diretrizes, Thrift ainda da suporte a um sistema de tipo que permite comunicaoentrelinguagens.Essesistemaoferecesuporteparatiposcomobyte,short, Ministrio da Sade / SAS / Departamento de Ateno Bsica intdouble,stringetiposmaisavanados,comocontineres(listas,mapas)eestruturas. Essesistemadetiposgenricoabasecomum(serializaoedesserializao)para comunicao de dados. 3.2 APIs Thrift do Sistema e-SUS AB Como estamos tratando especificamente da integrao de Sistemas Prprios com o Sistema e-SUS AB, muita da complexidade da implementao j foi absorvida pelo Sistema e-SUSAB,queimplementatodaapartedeservidordefinindooformatodosdadose disponibilizandoasAPIsgeradaspeloThrift,emdiferenteslinguagens,paraquesejam usadas pelos desenvolvedores que pretendem exportar dados para o Sistema e-SUS AB. Foram gerados dois pacotes de APIs para integrao com o Sistema e-SUS AB: APIThriftCidadotemoobjetivodegarantirumaformadeimportar cadastros j consolidados no municpio ou estado, de modo que seja possvel reutilizar esses cadastros no Sistema com PEC, no mdulo cidado. APIThriftRAStemoobjetivodeoferecerumaformadeimportaros RegistrosdeAtendimentoSimplificado(RAS),comovimosnaseo3.1, semelhanteaoformatousadopeloSistemacomCDS.Estemodelo simplificadopermitequeosmunicpiosquetemsistemasprpriose estruturadosnasUnidadesBsicasdeSadepossamexportarosdados paraqueestessejamenviadosaoSISABviaCentralizadorMunicipaldo Sistema e-SUS AB. ApartirdasAPIspossvelgerarosarquivosexportadosdosSistemasPrprios para serem importados no Sistema e-SUS AB. A estrutura de cada API ser detalhada mais a frente. Na prxima seo veremos, de forma genrica, como gerado o arquivo para ser importado. 3.2.1 Gerando um Arquivo para o Sistema e-SUS AB ComovimosnaFigura3.1,aimplementaodoThriftocorreemcamadaspara facilitarodesenvolvimentoconsiderandodiferentesproblemasdaintegrao.Apartedo Servidor implementada pelo Sistema e-SUS AB, portanto cabe ao desenvolvedor apenas gerar os dados a partir de sua aplicao na condio de cliente da aplicao. O Sistema e-SUS AB, por simplicidade, oferece neste momento apenas uma forma de integrao usando troca de arquivos, portanto iremos detalhar nesta seo os passos para gerar esse arquivo abstraindo as especificidades de alguma linguagem em particular. Passo 01 Configure sua aplicao para usar Thrift Ministrio da Sade / SAS / Departamento de Ateno Bsica ParaquesejapossvelusarasAPIsgeradaspeloApacheThriftnecessrio instalar e configurar o seu ambiente de desenvolvimento para usar as bibliotecas do Apache Thrift. As linguagens que j esto com APIs disponveis para o Sistema e-SUS AB so: Java (requer Ant e Java 1.7) Delphi (requer Delphi 2010 ou superior) C# (requer Mono >= 1.2.6 or .NET framework >= 3.5) PHP (requer PHP 5.0) Ruby (Ruby 1.8, bundler gem) ParamaisinformaessobrecomousaraslibsdoThriftacesse http://thrift.apache.org/lib/ CasonecessitedealgumaoutraAPIsuportadapeloThriftparaoSistemae-SUS AB, contate nossa equipe de desenvolvimento atravs do endereo: [email protected] Passo 02 Baixe a API do Sistema e-SUS AB a ser utilizada Baixe aAPI gerada pelo Thrift para o Sistemae-SUSAB a partir dositedoe-SUS AB, por meio do endereo: http://dab.saude.gov.br/esus. Nareadedownload,selecioneaopoIntegraoSistemasPrpriosena sequncia clique em Thrift Cidado ou Thrift RAS conforme for a necessidade. Passo 03 Copie o cdigo da API para sua aplicao Apsbaixaroarquivo,descompacte-oecopieosarquivoscorrespondentesa linguagem usada por sua aplicao para dentro do seu cdigo base. Passo 04 Inclua a API e as bibliotecas na sua aplicao Inclua a API do Sistema e-SUS AB correspondente a sua linguagem e as bibliotecas do Thrift no cdigo base de sua aplicao para que voc possa chamar as funes dentro da sua aplicao. Para exemplos sobre como fazer isso em sua aplicao veja os exemplos para cada linguagem em http://thrift.apache.org/tutorial/. Passo 05 Configure a camada de Transporte e Protocolo ApsprepararasuaaplicaoparausaroThrift,bastadefinircomoeemque formatoosdadosseroenviados,ouseja,deve-sedefinirascamadasdeTransportee Protocolo, j implementadas pelo Thrift. O Sistema e-SUS AB utiliza: TTransport: StreamTransport Ministrio da Sade / SAS / Departamento de Ateno Bsica Java: TIOStreamTransport Delphi: TStreamTransportImpl C#: TStreamTransport PHP5: TPhpStream Ruby: IOStreamTransport TProtocol: BinaryProtocol Java: TBinaryProtocol Delphi: TBinaryProtocolImpl C#: TBinaryProtocol PHP5: TBinaryProtocol Ruby: BinaryProtocol Para mais detalhes veja exemplos de funes de serializao disponvel no manual: Exemplo na linguagem Java: ThriftSerializer.java Exemplo na linguagem Delphi: ThriftSerializer.pas Passo 06 Preenchendo os dados Nestemomentovocpodecriarasrotinasqueiropreencherosdadosconforme definidopelasAPIs.Comovimos,asAPIsgeradaspeloThriftdefinemasestruturasdos dados do e-SUS AB (DadoTransporteThrift ou CidadaoTransportThrift). Nos prximoscaptulos sero detalhadas as estruturas e a melhor forma deutilizar essas APIs para importar os dados ao Sistema e-SUS AB. Passo 07 Empacotamento dos Dados OempacotamentodosdadosaseremenviadosaoSistemae-SUSABfeitopor meio de um conjunto de arquivos compactados por uma biblioteca ZIP. Cada arquivo a ser compactado corresponde a uma Ficha serializada dos dados. DentrodospacotesZIP,cadaarquivo(entries)devesernomeadocomaextenso do dado empacotado, a saber: Fichas CDS/RAS (DadoTransporteThrift) : extenso ".esus13"; Cadastro de Cidado (CidadaoTransportThrift) : extenso ".cidadao" Para mais detalhes veja o exemplo disponvel no manual: Exemplo na linguagem Java: ZipWriterExemplo.java Exemplo na linguagem Delphi: ZipWriterExemplo.pas AserializaodosdadosfeitapelaprpriaestruturadoThrift,conformedefinido pelo TProtocol e encapsulado pelo TTransport de acordo com o formato que foi configurado anteriormente. Ministrio da Sade / SAS / Departamento de Ateno Bsica Captulo 4. API Thrift Cidado Esta APIThrift permite integraro Sistema comPEC a outro sistema deinformao migrando uma base de cadastro de cidados, minimizando o esforo de recadastramento e digitao. O cidado identificado pelo CNS ou CPF, sendo assim, os dados j existentes seroalteradoscomanovaimportaoquandoforlocalizadoomesmocidado.Esta importao pode ser realizada em qualquer momento. Para entender melhor a aplicao e forma de uso da API, a seguir ser detalhada a estruturadaAPI,bemcomoserapresentadoumexemplodeimplementaousandoa linguagem Java. 4.1 Estrutura da API Thrift Cidado AAPIThriftCidadoimplementaaestruturadosdadosquedevemsersalvosem arquivo,comovimosnaSeo3.2.1.Estaestruturarecebeuonomede CidadaoTransportThriftepodeservisualizadanaFigura4.1,comdestaqueaosdados obrigatrios.Doiscampossomarcadoscomocondicionais,poisopreenchimentodeles dependedeoutrovalorembloco,asaber:CNS(naoPossuiCNS=true)enomeMae (desconheceNomeMae=false). Figura 4.1 Estrutura dos dados da API CidadaoTransportThrift AAPIaindausaalgumasestruturasauxiliarescomo:SexoThrift, TipoSanguineoThrifteEnderecoTransportThrift(verFigura4.2).Almdessasestruturas auxiliaresaindanecessriofazerrefernciaaumconjuntodeinformaesprovenientes Ministrio da Sade / SAS / Departamento de Ateno Bsica deTabelasdeReferncia,asaber:Escolaridade,Raa/Cor,Etnia,Localidade(para Municpio de Nascimento e Municpio de Residncia), CBO e Estado Civil. Figura 4.2 Estrutura dos dados da APIEnderecoTransportThrift 4.2 Exemplo de uso da API Thrift Cidado NestaseoiremosapresentarumexemplodeusodaAPIThriftCidadocom comentrios para tornar mais fcil a compreenso dos conceitos usados e das variveis do prprio Sistema e-SUS AB em relao aos dados do cidado. Oexemploaseguirnopretendesercompleto,portantoalgunsdetalhesjulgados irrelevantes foram suprimidos, portanto este cdigo deve ser adaptado para ser executado. Exemplo 4.1 Implementao na Linguagem Java ExemploThriftCidadaoJava.java Ministrio da Sade / SAS / Departamento de Ateno Bsica Captulo 5. API Thrift RAS Esta API Thrift recomendado aos municpios que optarem pela utilizao de outros sistemas de informao e que desejam transmitir seus dados produzidos na Ateno Bsica paraoMinistriodaSade.AestruturaRAS(RegistrodeAtendimentoSimplificado) baseada em um conjunto mnimo de informaes em sade coletadas pelos Sistemas PEC e CDS, conforme descrito no Captulo 2, e dever ser adotada como processo padro para transmissodosdadosaoSistemadeInformaoemSadeparaaAtenoBsica (SISAB). Para entender melhor a aplicao e a forma de uso da API, a seguir ser detalhada aestrutura daAPI,bemcomoserapresentadoumexemplodeimplementaousandoa linguagem Java. 5.1 Estrutura da API Thrift RAS AAPIThriftRASimplementaaestruturadosdadosquedevemsersalvosem arquivo,comovimosnaSeo3.2.1.Estaestruturarecebeuonomede DadosTransporteThriftepodeservisualizadanaFigura5.1,comdestaqueaosdados obrigatrios. Esta API tem um comportamento diferente da API Thrift Cidado, pois ela tem antesdosdadosdeatendimentoumacamadaparaidentificaroenvelopedosdadosque esto sendo transmitidos. Figura 5.1 Estrutura dos dados da API DadoTransporteThrift EstaAPIusaumaestruturaauxiliar(verFigura5.2)paradescreverosdadosda instalao.Almdessasestruturasauxiliaresaindanecessriofazerrefernciaaum conjuntodeinformaesprovenientesdasTabelasdeReferncias,descritanoDicionrio de Dados. Ministrio da Sade / SAS / Departamento de Ateno Bsica Figura 5.2 Estrutura dos dados da APIDadoInstalacaoThrift Considerando o fluxo de informaes de um Sistema Prprio (originadora) para um CentralizadorMunicipal(remetente)algunscamposdevemserdefinidosparaqueseja possvel de identific-los no mdulo de Controle de Recebimento dos dados no Sistema e-SUSAB.AseguiralgunsdetalhesimportantessodestacadosdaAPI DadoTransporteThrift: uuidDadoSerializado:UUIDdodado(identificador"universal"geradona criao do item) ; tipoDadoSerializado: Tipo/classe do objeto serializado ; cnesDadoSerializado: CNES da unidade de sade ; codIbge: Cdigo IBGE do dado serializado ineDadoSerializado:cdigodoIdentificadorNacionaldaEquipe(INE)da equipe que efetivamente gerou a informao/registro de atendimento; numLote: Nmero do Lote, controlado pela originadora; dadoSerializado: Dado serializado a partir de um Thrift . neste campo que servinculadaoregistrodeatendimento/cadastroqueestsendoenviada,usando as estruturas do RAS. remetente:Identificaainstalaoqueenviouodado,pormeiodaestrutura auxiliar DadoInstalacaoThrift , conforme descrito a seguir; originadora:Identificaainstalaoquecadastrou/digitou,pormeioda estrutura auxiliar DadoInstalacaoThrift , conforme descrito a seguir; versao: Identifica a verso do E-SUS AB usando VersaoThrift (1, 3, 0); Ainstalaotambmtemalgunsdadosquedevemserdefinidospormeioda entidade DadoInstalacaoThrift: contraChave:Identificaosoftwarequeestgerandoainformao.No demandanenhumadescriomandatria,massugere-seusaro NomeDoSoftware_Versao; uuidInstalacao:IdentificadorUUIDdainstalaodosistema,associado contraChaveauxilianocontroledefluxodaaplicaoquegeroua informao. Cada instalaodeve controlar seu prprio identificador, gerado apenas no primeiro envio. cpfOuCnpj: Cpf do responsvel ou CNPJ da empresa responsvel, em geral usa-seoCPFdoprofissionalcadastradonoCentralizadorMunicipalque receber os dados. nomeOuRazaoSocial:NomedoresponsvelouRazoSocialdaempresa responsvel fone: Telefone da pessoa ou empresa responsvel email: Email da pessoa ou empresa responsvel Ministrio da Sade / SAS / Departamento de Ateno Bsica Comovistoanteriormenteaestruturadoarquivoaserenviadopodetomarvrias formas,noentantoestedevecomporessencialmenteumarquivozipcomvriosarquivos referenciandoumregistro/cadastro, podendoesteregistro(Master)estarorganizandouma listaderegistrodomesmotipo(Child).NaFigura5.3,podemosveraestruturadeum possvel arquivo. Figura 5.3 Estrutura de um possvel arquivo RASZipFile.zip Aseguirsoapresentadasasentidades,detalhadasnoAnexoI,usadasnaAPI Thrift RAS: PROFISSIONAL / CABEALHO UnicaLotacaoHeaderThrift:Estaentidadeutilizadapararepresentaro profissional responsvel pelas fichas VariasLotacoesHeaderThrift:Estaentidadeutilizadapararepresentaro profissional responsvel pela ficha, e os outros que o auxiliaram na atividade ProfissionalCboRowItemThrift: Entidade usada em listas de profissionais HeaderCdsCadastroThrift:Entidadeutilizadapararepresentaroprofissional querealizouumaao(cadastroindividual,domiciliar,ouvisitadomiciliar),ea data respectiva ATENDIMENTO AtendimentoIndividualMasterThrift:Entidadequeorganizaosdadosde Atendimento Individual (cabealho e atendimentos) AtendimentoIndividualChildThrift:Entidadequeorganizaosdadosde Atendimento Individual, individualmente ProblemaCondicaoAvaliacaoAIThrift:Entidadequeorganizaos Problemas e Condies avaliadas no atendimento individual OutrosSiaThrift:EntidadequeorganizaosExamesSolicitadose/ou Avaliados referenciados pelo cdigo do SIGTAP AtendimentoOdontologicoMasterThrift:Entidadequeorganizaosdadosde Atendimento Odontolgico Individual (cabealho e atendimentos) Ministrio da Sade / SAS / Departamento de Ateno Bsica FichaAtendimentoOdontologicoChildThrift:Entidadequeorganizaos dados de Atendimento Odontolgico Individual, individualmente ProcedimentoQuantidadeThrift: Entidade que organiza os itens da lista outros procedimentos do atendimento odontolgico FichaAtividadeColetivaMasterThrift:Entidadequeorganizaosdadosdeuma Atividade Coletiva ParticipanteRowItemThrift:Entidadequeorganizaositensdalistade participantes de uma Atividade Coletiva ProcedimentoMasterThrift:Entidadequeorganizaarealizaode procedimentosrealizadosporumprofissional,tantoosindividualizadosquanto os consolidados FichaProcedimentoChildThrift:Entidadequeorganizaarealizaode procedimentos realizados a um cidado, individualmente VisitaDomiciliarMasterThrift:EntidadequeorganizaasVisitasDomiciliares realizadas por um profissional FichaVisitaDomiciliarChildThrift:Entidadequeorganizaasvisitas domiciliares realizadas a um cidado, individualmente CADASTRO CadastroDomiciliarMasterThrift:Entidadequeorganizaosdadosdeum Cadastro Domiciliar EnderecoLocalPermanenciaThrift:Entidadequeorganizaosdadosde Endereo(LocaldePermanncia,paraSituaodeRua)deumCadastro Domiciliar CondicaoMoradiaThrift:Entidadequeorganizaosdadosdecondiode moradia do Cadastro Domiciliar FamiliaRowThrift: Entidade que organiza os itens da lista de famlias de um domiclio CadastroIndividualMasterThrift:EntidadequeorganizaosdadosdeCadastro Individual do cidado adscrito IdentificacaoUsuarioCidadaoThrift:Entidadequeorganizaosdadosde identificao do cidado no Cadastro Individual InformacoesSocioDemograficasThrift:Entidadequeorganizaas informaes scio-demogrficas do cidado no Cadastro Individual CondicoesDeSaudeThrift:EntidadequeorganizaosdadosdeCadastro Individual do cidado adscrito EmSituacaoDeRuaThrift: Entidade que organiza os dados especficos sobre cidado em situao de rua 5.2 Exemplo de uso da API Thrift RAS NestaseoiremosapresentarumexemplodeusodaAPIThriftCidadocom comentrios para tornar mais fcil a compreenso dos conceitos usados e das variveis do prprio Sistema e-SUS AB em relao aos dados do cidado. Ministrio da Sade / SAS / Departamento de Ateno Bsica Foram implementados dois exemplos, um na linguagem Java, Exemplo 5.1, e outro na linguagem Delphi, Exemplo 5.2. Exemplo 5.1 Implementao na Linguagem Java ExemploDadosParaThrift.java Exemplo 5.2 Implementao na Linguagem Delphi ThriftExample.dpr Ministrio da Sade / SAS / Departamento de Ateno Bsica Concluso Estemanualbuscoutrazervriosconceitosparaquesetornemaisfcila implementao da exportao de dados para o Sistema e-SUS AB por meio das API Thrift geradas para integrao com Sistema Prprios. Paramaioresdetalhesconsultarosmanuaiscitadosnasrefernciabibliogrficase em todo decorrer do texto. Ministrio da Sade / SAS / Departamento de Ateno Bsica Referncias Bibliogrficas Apache Thrift Install - http://thrift.apache.org/docs/install/ AndrewPrunicki,ApacheThrift,2009ObjectComputing,Inc.EUA: http://jnb.ociweb.com/jnb/jnbJun2009.html Ministrio da Sade, Estratgia de e-Sade para o Brasil, 2014 (em publicao) Stratos Dimopoulos. Thrift Tutorial, 2013: http://thrift-tutorial.readthedocs.org/ Site do Apache Thrift - http://thrift.apache.org Site do Sistema e-SUS Ateno Bsica: http://dab.saude.gov.br/esus