Microsoft Certified Solutions Associate & Expert – SQL Server 2016

Pessoal, recentemente finalizei a carreira de certificações (por enquanto) em SQL Server. Gostaria de através desse post compartilhar com vocês como está atualmente a carreira de certificações da Microsoft, com relação à plataforma de dados, e também dar algumas dicas de como vocês podem também alcançar um ou vários dos titulo de Microsoft Certified Professional.


Carreira de certificações atual (MCSA SQL 2016)

No que diz respeito ao SQL Server 2012/2014, a carreira de certificações se resumia a apenas uma onde, para conseguir o título de Microsoft Certified Solutions Associate, era necessário realizar 3 provas onde, em cada uma delas, eram medidos conhecimentos em três áreas diferentes: Desenvolvimento (Exame 70-461), Administração (Exame 70-462) e Desenvolvimento de Ambientes de BI (Exame 70-463).

Conseguir adquirir essa certificação não era tarefa fácil pois demandava do candidato conhecimentos profundos de 3 assuntos totalmente distintos.

Atualmente, no SQL Server 2016, a Microsoft mudou um pouco a maneira de pensar com relação à carreira de certificações e dividiu o MCSA em três trilhas diferentes. São elas:

  • MCSA SQL 2016 | Database Development – Esse título é adquirido pelo candidato que for bem sucedido nos exames 70-761 – Querying Data with Transact-SQL e 70-762 – Developing SQL Databases.
  • MCSA SQL 2016 | Database Administration – Esse título é adquirido pelo candidato que for bem sucedido nos exames 70-764 – Administering a SQL Database Infrastructure e 70-765 – Provisioning SQL Databases.
  • MCSA SQL 2016 | BI Development – Esse título é adquirido pelo candidato que for bem sucedido nos exames 70-767 – Implementing a SQL Data Warehouse e 70-768 – Developing SQL Data Models.

Impressões sobre as provas (MCSA SQL 2016)

            

Quando iniciei a jornada de certificações da plataforma do SQL Server 2016 eu já possuía o título de SQL Server MCSA 2012/2014 e, por isso, não houve a necessidade de que eu realizasse os 6 exames para conquistar cada um dos 3 títulos do MCSA do SQL Server 2016 pois, cada uma das 3 provas substitui a primeira prova (70-761, 70-764 e 70-767) do novo ciclo.

Essa substituição ocorre pelo simples fato de que o conteúdo estudado para as 3 provas do SQL Server 2014 é praticamente o mesmo que para a primeira prova de cada uma das novas carreiras. com base nisso, leiam:

Agora, quanto aos outros 3 exames, seguem abaixo minhas impressões:

  • Exame 70-762 – Developing SQL Databases – Esse exame é o segundo da trilha para MCSA em Desenvolvimento. Realizei essa prova quando estava em período BETA. foram em torno de 63 questões (Atualmente não deve passar de 45) onde os principais assuntos cobrados estão relacionados à identificação e solução de problemas relacionados tratamento de exceções em queryes, identificação e tratamento de Locks e Deadlocks e os demais assuntos relacionados à segurança de objetos, utilização de triggers e views para abstração de banco de dados físico na aplicação dentre outros.
  • Exame 70-765 – Provisioning SQL Databases – Esse exame é o segundo da trilha para MCSA em Administração de ambientes de bancos de dados em SQL Server. Também realizei esse exame em caráter BETA e, não se enganem, AZURE é o tema dessa prova. Dentre os assuntos mais cobrados estão: Identificar qual o melhor caminho para criação de uma infraestrutura no AZURE (Infrastructure as a Services [IaaS] ou Platform as a Services [PaaS]), como identificar o melhor tipo de Tier para Azure SQL Database com base nas possibilidades disponíveis em cada um deles, Como realizar Backup e Restore no ambiente Cloud, configuração do ambiente de dados do SQL Server em VMs no AZURE dentre outros.
  • Exame 70-768 – Developing SQL Data Models – Esse exame é o segundo da trilha para MCSA em Business Intelligence com a plataforma do SQL Server 2016. Esse exame é unica e exclusivamente relacionado ao SQL Server Analysis Services. Dentre outros assuntos, os mais cobrados são: Qual modelo (Multidimensional ou Tabular) usar dependendo dos requisitos fornecidos, Como desenvolver KPIs e Campos Calculados com MDX e DAX, Como ocultar dos usuários finais colunas e tabelas em ambos os modelos, Como otimizar cubos multidimensionais através de relacionamentos entre atributos, qual tipo de armazenamento utilizar em ambos os modelos (MOLAP/ROLAP x InMemory/DirectQuery) dentre outros.

    Carreira de certificações atual (MCSE SQL 2016)

Anteriormente existiam duas carreiras para se tornar um Expert nas soluções da plataforma de dados do SQL Server. Era possível se tornar Solutions Expert em Data Platform (Exame 70-464 e Exame 70-465) ou em Business Intelligence (Exame 70-466 e Exame 70-467).

Atualmente, essas duas certificações foram descontinuadas. Existe epenas um título que pode ser adquirido. Ele se chama Microsoft Certified Solutions Expert in Data Management and Analytics. Para adquirir essa certificação basta que você possua uma das certificações em MCSA SQL 2016 (Desenvolvimento, Administração ou BI) e seja bem sucedido em um dos exames abaixo:

  1. Exame 70-473 – Designing and Implementing Cloud Data Platform Solutions – “Este exame foi criado para candidatos que estiverem interessados em confirmar suas habilidades em projetar e implementar soluções de plataforma de dados da Microsoft. Os candidatos deste exame devem ter experiência relevante de trabalho em soluções de plataforma locais e baseadas em nuvem.”
  2. Exame 70-475 – Designing and Implementing Big Data Analytics Solutions – “Este exame de certificação destina-se a profissionais de gerenciamento de dados, arquitetos de dados, cientistas de dados e desenvolvedores de dados que criam soluções de análise para Big Data no Microsoft Azure. Os candidatos deste exame devem ter experiência relevante de trabalho em soluções de análise de Big Data.”
  3. Exame 70-464 – Developing Microsoft SQL Server Databases – “Este exame se destina a profissionais de banco de dados que compilam e implementam bancos de dados em várias organizações e garantem níveis elevados de disponibilidade de dados. Entre suas responsabilidades estão criar arquivos de banco de dados, tipos de dados e tabelas; planejar, criar e otimizar índices; garantir integridade de dados; implementar exibições, procedimentos armazenados e funções; e gerenciar transações e bloqueios.”
  4. Exame 70-465 – Designing Database Solutions for Microsoft SQL Server – “Este exame é destinado a profissionais de banco de dados que projetam e compilam soluções de banco de dados na organização. Eles são responsáveis pela criação de planos e projetos para estrutura, armazenamento, objetos e servidores de banco de dados. Eles criam o plano para o ambiente em que a solução de banco de dados é executada.”
  5. Exame 70-466 – Implementing Data Models and Reports with Microsoft SQL Server – “Este exame é destinado a desenvolvedores de Business Intelligence (BI) com foco na criação de soluções de BI que exigem implementar modelos de dados multidimensionais, implementar e manter cubos OLAP e criar exibições de informações usadas na tomada de decisão de negócios.”
  6. Exame 70-467 – Designing Business Intelligence Solutions with Microsoft SQL Server – “Este exame é destinado a arquitetos de Business Intelligence (BI), que são responsáveis pelo projeto geral de uma infraestrutura de BI e pelo modo como esta se relaciona com outros sistemas de dados em uso.”

    Impressões sobre as provas (MCSE SQL 2016)

Para adquirir a certificação de MCSE em SQL Server 2016 realizei primeiramente o Exame 70-466 e em seguida o exame 70-767 ( não que esse fosse necessário mas decidi o fazer pois os dois exames eram necessários para a carreira de MCSE de Business Intelligence).

  • Exame 70-466 – Implementing Data Models and Reports with Microsoft SQL Server – Esse exame é muito parecido com a segunda prova necessária para o MCSA em BI do SQL Server 2016 (Exame 70-768). A diferença entre eles é que, neste, conhecimentos em Reporting Services são necessários. Dentre eles: saber que componentes usar dependendo do tipo de análise solicitada, saber quais permissões usar exatamente dependendo da necessidade, como realizar migrações de ambiente em situações de disaster/recovery, dentre outros.
  • Exame 70-467 – Designing Business Intelligence Solutions with Microsoft SQL Server – Esse exame foi o MAIS DIFÍCIL que já realizei. Ele não exige simplesmente que saiba-se construir, desde modelos Dimensionais (Kimball x Immon) em SQL Server, Projetos de Integração de Dados com Integration Services, Projetos de Cubos Tabulares e/ou Multidimensionais e projetos de Reporting Services em modo Nativo e/ou integrados com sharepoint, mas também o que é MELHOR dentre as várias opções disponibilizadas. Outros assuntos abordados também são cubos dentro do Power Pivot (e como importá-los para um modelo Tabular dentro do SSAS) e análises dentro do Power View (Ainda não encontramos aqui Mobile Report e Power BI).

Como se preparar – Material para Estudo

Essa área do post se dedica às pessoas que querem aprender o conteúdo necessário para se tornarem Microsoft Certified Solutions Associate / Solutions Expert em SQL Server 2016. Abaixo seguem os livros e materiais que utilizei para conseguir ser bem sucedido em todos esses exames os quais listei.

  • Para os exames relacionados a desenvolvimento de SQL Server (70-461, 70-761, 70-762 e 70-464) aconselho o estudo APROFUNDADO do livro Querying Microsoft® SQL Server® 2012 Exam 70-461 Training Kit.
  • Para os exames relacionados a administração de ambiente em SQL Server (70-462, 70-764 e 70-465) aconselho também o estudo aprofundado dos livros Training Kit Exam 70-462: Administering Microsoft® SQL Sever® 2012 DatabasesProfessional Microsoft SQL Server 2014 Administration. Em se tratando de alta disponibilidade com AlwaysOn FCI aconselho o livro SQL Server 2014 – Alta Disponibilidade na Prática Com Alwayson Failover Cluster Instances e para AlwaysOn AG a documentação no link.
  • Para estudos relacionados a AZURE (70-765 e 70-473) aconselho o estudo através das documentações (Não há muito conteúdo em livros ainda sobre o assunto).
  • Para os exames relacionados à Business Intelligence (70-463, 70-767, 70-768, 70-466 e 70-767) não existe melhor fonte, na minha opinião, que estudar profundamente os livros: The Data Warehouse Toolkit (Para modelagem), Professional Microsoft SQL Server 2014 Integration Services (Para Integração de Dados), Professional Microsoft SQL Server 2012 Analysis Services with MDX and DAX (Envolve todo o conteúdo OLAP da plataforma do SQL Server + dicas avançadas de performance e troubleshoot + conteúdo para desenvolvimento de códigos em Multidimensional Expression [MDX] e Data Analysis Expression [DAX]) e o Professional Microsoft SQL Server 2016 Reporting Services and Mobile Reports (Todo o conteúdo de Reporting Services com o Adicional do Mobile Report [Ainda não cobrado para os exames]).

    Espero poder conseguir ajudá-los e desejo que todos tenham sucesso nos exames.

BI and Analytics Week & SQL Saturday #580 – Joinville

Pessoal, tenho estado em uma grande correria com as obrigações profissionais, porém, não poderia deixar passar a oportunidade de compartilhar o material relacionado às duas últimas palestras que fiz pela comunidade.

Realizei no dia 31/03 realizei para o BI and Analytics Summit uma sessão com o tema Por Detrás dos Relatórios de BI onde expliquei conceitos relacionados à arquitetura de um projeto de Data Warehouse e o funcionamento de um sistema de Business Intelligence do início até a criação dos relatórios, Key Performance Indicators, Scorecards e Dashboards. Ela pode ser assistida por qualquer profissional de BI ou simpatizantes com a área pois não relacionei o conteúdo com nenhuma ferramenta.

Agradeço de todo coração ao Rafael Piton pelo convite para fazer parte do grande time do evento. Caso queiram, segue abaixo o vídeo no meu canal do Youtube e o slide usado na apresentação. Have Fun!


O segundo evento do qual fiz parte foi o primeiro SQL Saturday que ocorreu no ano de 2017 no Brasil. O local foi Joinville em Santa Catarina. Foram mais de 300 pessoas participantes que puderam ouvir do grande time da comunidade sobre improvements e features relacionadas ao mundo de Data prataform e Analytics da Microsoft

Falei um pouco sobre uma nova feature do SQL Server 2016 denominada Temporal Tables. Realizei também uma comparação com a Feature Change Data Capture que vem no produto desde a release 2008.

Se interessados, é possível realizar o download do material (Slides e Scripts) clicando na imagem abaixo.

Agradeço de todo coração ao MVP em Data Plataform Rodrigo Dornel e a todo o time organizador do evento pela oportunidade de poder mais uma vez contribuir com a comunidade com informações sobre os produtos de Data Insights da Microsoft. Great Job!

Aproveito o post para convidá-los/intimá-los a participar dos próximos eventos que irão ocorrer gratuitamente na comunidade | Brasil:

  1. Dia 22/04 – Global Azure Bootcamp. Evento Gratuito que acontecerá simuntaneamente em todas as principais cidades do mundo sobre Cloud Computing.
  2. Dias 19 e 20/05 – The Amazing Data. Esse evento contará com participação do Benjamin Neverez. Ele é especialista em tuning e otimização de consulta e uma das maiores referências técnicas em SQL Server do mundo. Autor de três livros sobre o assunto:
    1. High Performance SQL Server”;
    2. SQL Server 2014 Query Tuning & Optimization”;
    3. Inside the SQL Server Query Optimizer”;
    4. Alem de ser também, co-autor do livro SQL Server 2012 Internals”.

    Para mais informações sobre o evento veja o link.

  3. Dia 24/06 – SQL Saturday | Caxias do Sul – RS.
  4. Dia 19/08 – SQL Saturday | Brasília – DF.
  5. Dia 30/09 – SQL Saturday | São Paulo – SP.
  6. Dia 21/10 – SQL Saturday | Rio de Janeiro – RJ.
  7. Dia 18/11 – SQL Saturday | Salvador – BA.

Espero poder vê-los ou revê-los em alguns deles!

Facebook Page – Data’s Light

Pessoal, venho através deste post comunicar a vocês a criação da minha página no Facebook.

Nela pretendo manter informações, posts e vídeos sobre eventos, novidades e novos posts sobre conhecimentos técnicos.

Peço a vocês que deem o Like e Sigam para que assim consigamos continuar aprendendo e trocando informações juntos.

Grande abraço!

Atenciosamente,

Arthur Luz | Data’s Light.

Retrospectiva 2016

Pessoal, sei que já estamos na metade do primeiro mês de 2017 mas não poderia deixar de fazer uma breve retrospectiva do ano de 2016 que foi, assim como o ano de 2015 em sua época, um ano de grandes conquistas, grandes prazeres e MUITO trabalho.


blogInicio o post falando um pouco sobre o próprio blog Data’s Light. Em 2016 tive mais de 17 Mil acessos de mais de 5.600 pessoas de mais de 65 países ao redor do mundo. Comparado a 2015, o blog teve um acréscimo percentual de mais de 140% em número de acessos.

Fico demasiadamente feliz por saber que tudo que tenho postado tem sido de ajuda para muitos no Brasil e ao redor do mundo. 


Agora falarei um pouco dos eventos que ocorreram na comunidade. Tive a oportunidade de poder falar em 12 eventos, dentre eles 3 SQL Saturdays e um SQL Day, 3 eventos online (dentre eles tive minha primeira participação no 24 PASS Global Portuguese) e algumas palestras para a comunidade e faculdades

12993595_1058328720906571_8005188414741808845_n14224756_1179218518817590_8862110312435407812_n 15253656_1277297142343060_5131546341331321673_n

É extremamente gratificante poder levar um pouco da experiência e conhecimento pra galera que realmente almeja crescer e se tornar um profissional de excelência (assim como todos nos desejamos). 

Agradeço de todo coração aos Lideres dos PASS Chapter de Brasília, São Paulo e Joinville e Bahia (Edvaldo Castro, Diego Nogare, Rodrigo Dornel e Flávio Farias, respectivamente), aos organizadores dos eventos online Vitor Fava, Marcos Freccia, Murilo Miranda, Rafael Piton, Dennes Torres e às faculdades UniProjeção e IESB que me deram mais uma vez a oportunidade de poder fazer parte desses grandiosos eventos.img_8006

foto03 img_0019


Junto à BI do Brasil à Hepta Novintec (Como Instrutor Oficial) e algumas outras empresas pude também realizar a ministração de alguns cursos online e presenciais sobre a plataforma de Dados do Microsoft SQL Server e Business Intelligence.

Dentre os cursos da plataforma online estão uma participação no curso de Microsoft SQL Server Integration Services (Falando sobre Change Data Capture e Slowly Changing Dimension), Microsoft Datazen e o novo SSRS Mobile Report.

Dentre os cursos presenciais tive a oportunidade de ministrar para alguns alunos que hoje são amigos e parceiros profissionais cursos como 20461C Querying Microsoft SQL Server, 20462D Administering Microsoft SQL Server Database e 20463C Implemeting a Data Warehouse with Microsoft SQL Server.

foto

Agradeço demais à MVP em SQL Server Viviane Ribeiro e à Diretora executiva de cursos da Hepta Bethania pela confiança no meu trabalho e oportunidade de poder fazer parte da equipe de instrutores da BI do Brasil e Hepta Novintec.


Fiz parte de alguns projetos bem legais e críticos em algumas empresas como Compline Services Solutions e Datainfo Soluções em TI (Alocado na Agência Nacional de Energia Elétrica – ANEEL). Conheci várias pessoas que muito me muito ensinaram (algumas como ser e outras como não ser como profissional). Agradeço a todos vocês pois sem essas experiências não seria o profissional que hoje sou.

Nesse ano, como uma parte essencial da minha formação profissional, pude tirar algumas certificações e adquiri alguns títulos tais quais: MCSA em SQL Server 2012/2014, Microsoft Certified Trainer (MCT) e MCSA em SQL Server 2016 Database Development e Database Administration.

Em Novembro iniciei uma nova jornada na minha carreira profissional como Consultor de BI e Banco de Dados Sênior na Microsoft. Não tenho palavras para descrever o que essa conquista significa pra mim. Agradeço de coração a todos os que fizeram parte dela, tanto àquelas que ensinamentos que me deram, quanto às que me ajudaram de alguma forma.


Gostaria de agradecer também a todos os que tiram um tempinho de seus dias para ler o que escreve aqui no Blog. Vocês fazem parte de tudo isso descrito anteriormente. Todas as minhas conquistas também são de vocês.

Não poderia deixar passar também um agradecimento especial ao GRANDIOSÍSSIMO Fabio de Salles. Esse cara é um dos maiores nomes de Business Intelligence do Brasil e uma das principais referências em Pentaho que conheço. Tive a honra de ser citado em um dos seus posts como um dos autores dos quais ele gosta de acompanhar e, sinceramente, fui arremetido por uma grande euforia.

Quando iniciei minha carreira comprei um de seus livros, usei seu conteúdo e hoje, tenho a grande surpresa de saber que ele gosta e acompanha o que escrevo!

Muito obrigado, Fabio!!! Você é demais e continua sendo uma referência para mim!


No mais, conforme disse no post de Retrospectiva de 2015, Que 2017, assim como 2016, venha cheio de oportunidades, dificuldades, bençãos e muito trabalho e aprendizado para todos nós! Grande Abraço!

Atenciosamente,

Arthur Luz | Data’s Light.

SQL Maniacs – SQL Server 2016 Temporal Tables

Pessoal, na última quarta feira tive a honra de participar novamente de mais um evento do SQL Maniacs a convite do MVP em SQL Server Vitor Fava. Dessa vez estive falando sobre a mais nova feature do SQL Server 2016 denominada Temporal Tables.

– Desde já agradeço ao Vitor pela sua disponibilidade e predisposição em sempre ajudar a comunidade! –

Através desta tecnologia é possível armazenar dados hostóricos em ambiente OLTP de maneira simples. Com isso é possível realizar rollback de transações já comitadas, fazer consultas históricas em ambiente OLTP e realizar análises de Slowly Changing Dimension em ambientes de Business Intelligence.

Além de explorar as possibilidades da feature, foi realizado também um comparativo com o Change Data Capture e suas principais diferenças.

Segue abaixo o vídeo da apresentação que está no canal do youtube do SQL Maniacs e, se você quiser realizar os testes, clique no LINK para realizar o download da apresentação de slide e e SSMS Project com os scripts usados. 

Espero poder ajudá-los!

24 Hours Global PASS Portuguese – SSRS 2016

No último dia 15/11 participei de mais um evento da comunidade PASS denominado 24 Hours Global PASS Portuguese falando sobre as novidades do SQL Server Reporting Services 2016 e suas integrações com o antigo Microsoft Datazen e o Power BI Desktop e Cloud

O evento foi composto por uma série de 24 palestras durante 5 dias onde grandes nomes da comunidade Microsoft falaram sobre diversos assuntos dentre melhores práticas e novidades relacionadas a Cloud, Business Intelligence, SQL Server dentre outros. 

Agradeço grandemente à equipe do virtual PASS pela oportunidade de poder levar um pouco mais de conhecimento para frente. Isso tudo é muito gratificante e acredito poder falar, neste caso, por todos que participaram como palestrantes e moderadores no evento. 

Abaixo segue o vídeo da apresentação que fora gravada.  

Espero poder ajudá-los!

Usando Expressions dentro do Foreach Loop Container para Captura de Dados de arquivos específicos em um diretório

Na semana passada alguns alunos de um curso de Integration Services que ministrei me trouxeram um questionamento bem interessante sobre um problema com relação à criação de processos de ETL.

Eles trabalham na Caixa Econômica Federal e lá possuem uma situação onde necessitam extrair de um diretório de rede – onde vários arquivos são armazenados de vários processamentos distintos – dados de apenas um arquivo relacionado ao dia útil anterior de um processo específico.

Achei o caso bem interessante e através desse post vou demonstrar como resolver a issue.


Criei uma série de arquivos de para simular o ambiente dos alunos. Nesse diretório teremos dois tipos de arquivos distintos pelo nome que representam dois processos diferentes. são eles [NPD010253.DOC2794.031016007.ARC6576] e [JJX010253.DOC2794.031016007.ARC1076]. Os arquivos são formados pela sigla do processo e uma numeração específica do processo [NPD010253] + o número do documento [DOC2794] + a data dos dados acompanhada de um outro código [031016007] + um outro código e numeração [ARC6576] (toda a nomeclatura do arquivos é meramente demonstrativa).

02

Entendido isso, a problemática é a seguinte: é necessário que desse diretório onde se encontram arquivos de todos os dias úteis do mês de Outubro para ambos os processos (processo [NPD] e processo [JJX]) sejam extraídos somente os dados do arquivo do processo [NPD] porém somente os dados do último dia útil do mês (Lembrando que esse processo hipotético somente será executado de segunda a sexta feira).


Use o Script abaixo para criação do banco de dados de teste que será usado no artigo e acesse o Link para realizar o download do pacote e arquivos usados na demonstração. Para que não ocorram erros, ponham a pasta de arquivos baixados dentro do diretório C:\.

--------------------------------------------
---------- CRIA AMBIENTE DE TESTE ----------
--------------------------------------------
USE master
GO

CREATE DATABASE test_SSIS
GO 

CREATE TABLE tbCliente (
 CodCliente INT,
 NomCLiente VARCHAR(255),
 TipoCliente VARCHAR(55),
 EmailCliente VARCHAR(255),
 TipoTelefone VARCHAR(55),
 TelefoneCliente VARCHAR(55),
 TipoEndereco VARCHAR (55),
 EnderecoCliente VARCHAR (255),
 CodigoPostal VARCHAR (50),
 DatCriacaoRegistro DATETIME
 )

o Pacote nada mais é do que um fluxo de ETL para carga dinâmica de vários arquivos distintos usando o Foreach Loop Container e a parametrização da ConnectionString da conexão com o Flat File Source usando a variável que recebe o nome do arquivos dentro do loop. 

Se ao ler este artigo você ainda não estiver familiarizado com o uso do Foreach Loop Container para carga em loop de vários arquivos em um mesmo destino podem me mandar email que explico como funciona pontualmente já que explicar essa configuração não é a ideia do artigo.

01

A segunda etapa de configuração que será demonstrada abaixo ainda não existe no pacote que está disponível para download. Isto é proposital para que você possa seguir o passo-a-passo de configuração do post.


Para que o ETL carregue apenas os dados do arquivo do último dia útil do mês (sempre o dia útil anterior ao dia atual) e apenas de um dos processos disponíveis no diretório é necessário que, dentro do Foreach Loop Container haja uma parametrização da opção Files: dentro da Aba de configuração Collection.

Para isso, será necessário que você utilize uma Expression. Essa expressão será mapeada no campo Expressions que fica abaixo da seleção de Enumerador do foreach [Enumerator].

03

Dentro da janela de propriedades você irá selecionar em Property a opção FileSpec, na opção Expression, você irá preencher com a expressão abaixo (é possível também, dentro de Property, usar a opção Directory para mapear o diretório do arquivo dinamicamente):

"NPD*" + (
 LEN((DT_WSTR, 2) DAY((DT_DATE) "2016-10-24")) == 1 ? 
 "0" + ((DT_WSTR, 2)(
 DATEPART("DW",(DT_DATE)"2016-10-24") == 2 ? 
 (DT_WSTR, 2)(DAY((DT_DATE)"2016-10-24") -3) :
 (DT_WSTR, 2)(DAY((DT_DATE)"2016-10-24"))
 )
 ) : (
 (DT_WSTR, 2)(DATEPART("DW",(DT_DATE)"2016-10-24") == 2 ? 
 (DT_WSTR, 2)(DAY((DT_DATE)"2016-10-24") -3) :
 (DT_WSTR, 2)(DAY((DT_DATE)"2016-10-24"))
 )
 )
+ (LEN((DT_WSTR, 2) (MONTH((DT_DATE) "2016-10-24"))) == 1 ? 
 "0" + (DT_WSTR, 2) (MONTH((DT_DATE) "2016-10-24")) : 
 (DT_WSTR, 2) (MONTH((DT_DATE) "2016-10-24"))) 
 + (RIGHT((DT_WSTR, 4) (YEAR((DT_DATE) "2016-10-24")),2)) 
 )+ "*.*"

05

Essa expressão irá criar a busca dinâmica pelo nome do arquivo que possua o identificador do processo [NPD] e que tenha data igual ao dia de hoje – 1 (último dia útil).

08

Obs – A expressão acima usa a data ’24-10-2016′ de maneira não dinâmica. Isso está dessa maneira porque o último arquivo do diretório possui a data ’21-10-2016′. Para que em ambiente de produção isso ocorra dinamicamente substitua a data ’24-10-2016′ pela Function GETDATE() conforme a Expression abaixo:

"NPD*" + (
 LEN((DT_WSTR, 2) (DAY(GETDATE()))) == 1 ? 
 "0" + ((DT_WSTR, 2)(
 DATEPART("DW",(GETDATE())) == 2 ? 
 (DT_WSTR, 2)((DAY(GETDATE())) -3) :
 (DT_WSTR, 2)((DAY(GETDATE())))
 )
 ) : (
 (DT_WSTR, 2)(DATEPART("DW",(GETDATE())) == 2 ? 
 (DT_WSTR, 2)(((DAY(GETDATE()))) -3) :
 (DT_WSTR, 2)((DAY(GETDATE())))
 )
 )
+ (LEN((DT_WSTR, 2) (MONTH(GETDATE()))) == 1 ? 
 "0" + (DT_WSTR, 2) (MONTH(GETDATE())) : 
 (DT_WSTR, 2) (MONTH(GETDATE()))) 
 + (RIGHT((DT_WSTR, 4) (YEAR(GETDATE())),2)) 
 )+ "*.*"

Agora, ao executarmos o pacote com o breakpoint habilitado para cada interação do loop poderemos observar que a variável nomeArquivo que, dentro do Flat File Connection, irá se tornar a Connection String para o ETL irá está mapeando o arquivo de nome [NPD010253.DOC2794.211016008.ARC6590.txt] cujo processo corresponde ao processo mapeado na Expression e a data diz respeito à data anterior à data mapeada.

06

Se continuada a execução do pacote, não haverão mais interações de Loop e o pacote irá terminar o processo de carga.

Se você for até o Management Studio e executar a query abaixo, verá que a única data existente dentro da tabela é 2016-10-21.

SELECT DISTINCT CAST(DatCriacaoRegistro 
 AS DATE) AS DatCriacaoRegistro
FROM tbCliente

07


É claro que a Expression deverá ser adaptada para cada ambiente e cada nomeclatura de arquivos segundo as necessidades do processo de carga de ETL.

Espero poder ajudá-los!