Code Monkey home page Code Monkey logo

psreports's Introduction

PSReports

Curent release

PSReports es un modulo de Powershell que permite la generacion de reportes a partir de la configuracion de un script de SQL.

Crear Una Nueva Configuracion Para Un Reporte

1. Crear Target

El target o targets son los diferentes destinos que tendra el reporte generado y si este sera o no encriptado para cada target.

  • Nota Las llaves indicadas en la configuracion son previamente creadas en PSProcessa utilizando las funciones de Set-SMTPConnection, Set-FTPConnection y Set-PGPKeyStore
Get-FTPConnection
# Uno de los Nombres retornados por la anterior funcion debe ser colocado en la variable $FtpKey

Get-SmtpConnection
# Uno de los Nombres retornados por la anterior funcion debe ser colocado en la variable $Smtpkey

Get-PGPKeyStore
# Uno de los Nombres retornados por la anterior funcion debe ser colocado en la variable $PGPKey

$TargetA = New-Target -FtpKey $FtpKey -RemotePath $RemotePath -TransferMode Ascii -SmtpKey $Smtpkey -EmailTo $EmailTo
$TargetB = New-Target -FtpKey $FtpKey -RemotePath $RemotePath -TransferMode Binary -SmtpKey $Smtpkey -EmailTo $EmailTo -PGPKey $PGPKey

2. Crear Configuracion Del Reporte

La configuracion del reporte recibe un array de objetos (Targets) como uno de sus parametros de entrada, este puede ser recibido por pipeline "|".

  • Nota La llave indicada en el parametro SqlKey debe estar previamente creada en PSPRocessa utilizando la funcion Sqt-SqlConnection
Get-SqlConnection 
# Uno de los Nombres retornados por la anterior funcion debe ser colocado en la variable $SqlKey

$TargetA | New-Report -Name $ReportName -SqlPath $DirectorySqlPath -SqlKey $SqlKey -OutputPath $OutputPath -Delimiter ';' -FileNameFormat 'Report{0:yyyyMMdd}.txt' -ExportHeader
$TargetA,$TargetB | New-Report -Name $ReportName2 -SqlPath $DirectorySqlPath2 -SqlKey $SqlKey2 -OutputPath $OutputPath -FileNameScript {'Report{0:yyyyMMdd}.txt' -f (Get-Date).AddDays(-2)} 

3. Obtener Configuracion Del Reporte

Para obtener la configuracion creada previamente utilizaremos los siguientes comandos:

Get-Report 
# Este primer comando nos retornara todas las configuraciones creadas
Get-Report -Name $ReportName 
# Este comando nos retornara la configuracion creada del reporte con el nombre que se encuentre en la variable $ReportName 
Get-Report -Name $ReportName | Get-Target 
# Este comando nos retornara los diferentes target que tenga asociado el reporte con el nombre que se encuentre en la variable $ReportName 


Ejecutar Un Reporte

Para ejecutar un reporte es necesario utilizar la funcion Get-Report ya que el objeto de salida de esta funcion se utiliza como parametro de entrada para la funcion Invoke-Report.

    (Get-Report -Name $ReportName) | Invoke-Report
  • Nota Los logs del proceso se encontraran en las carpetas del modulo PSReports (ReportLogs).

Actualizar La Configuracion De Un Reporte

Para realizar la actualizacion de la configuracion de un reporte se debera utilizar el siguiente comando

    Get-Report -Name $ReportName | Update-Report -Delimiter '|' -SqlPath $NewDirectorySqlPath
  • Nota Este comando generara una nueva version de la configuracion del reporte y almacenara la configuracion anterior. Para obtener la configuracion anterior sera necesario ejecutar el comando
    Get-Report -Name $ReportName -Version 1.0.0.0

Actualizar Un Target

    Get-Report -Name $ReportName | Get-target -IdTarget 1 | Update-Target -EmailTo $NewEmailTo
  • Nota Este comando actualiza el target y genera una nueva version de la configuracion del reporte.

Estructura de la documentación

Las carpetas corresponden a los siguientes recursos de información:

Carpeta Descripción
Scripting >> Setup Describe el proceso de instalación del módulo
Scripting >> Functions Funciones del modulo para manipulacion de la configuracion y ejecucion del reporte.

psreports's People

Contributors

rd-processa avatar alexrodriguez122 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.