This repository contains a comprehensive collection of scripts and tools for data engineering tasks, focusing on database interactions, data processing, and automation. The toolkit includes PowerShell scripts for system automation, Python modules for data manipulation, SQL queries for Snowflake operations, and supporting documentation.
IMPORTANT: Do not focus on the tool, instead focus on business logic and full understanding of your ERP/System.
TIPS: Download this repo to easily navigate through the files.
CAUTION: Please review security policy within your workspace before solution implementation.
Collection of PowerShell scripts for various data engineering operations:
-
Database Operations:
access_addTable.ps1- Creates tables in Access databaseaccess_alterTableAddColumn.ps1- Add tables column in Access databaseaccess_alterTableRenameColumn.ps1- Rename tables column in Access databaseaccess_alterTableDropColumn.ps1- Delete tables column in Access databaseaccess_updateValue.ps1- Update tables value in Access databaseaccess_addTableFromSelect.ps1- Creates tables from SELECT queries in Accessaccess_addValue.ps1- Inserts values into Access tablesaccess_deleteTable.ps1- Deletes tables from Access databaseaccess_readValue.ps1- Reads values from Access databaseaccess_webScrapping.ps1- Creates tables in Access database from webScrappingodbc_readValue.ps1- Reads data via ODBC connectionsoracle_readValue.ps1- Reads data from Oracle databasesaccess_clearFile.ps1- Clear database Files
-
Execution Scripts:
call_ps1Files.ps1- Executes other PowerShell scriptsexecute_pythonScript.ps1- Runs Python scripts asynchronouslyexecute_snowCLI.ps1- Executes Snowflake CLI commandsexecute_snowSQL.ps1- Runs SnowSQL queries
-
Data Processing:
consolidateSqlQuery.ps1- Consolidates SQL queriesexcel_updateQuery.ps1- Updates Excel files with query resultsfolder_updates.ps1- Handles folder updates and file operationssave_excel.ps1- Saves data to Excel files
-
Utilities:
key-pair-auth.ps1- Handles key-pair authenticationodbc_driversHandle.ps1- Manages ODBC driversoutlook_api.ps1- Interacts with Outlook APIoutlook_legacy.ps1- Legacy Outlook operationspbi_restApi.ps1- Power BI REST API interactionslinkedIn_api.ps1- LinkedIn Business API interactionsreadFile.ps1- File reading operationsregexp.ps1- Regular expression operationsshp_restApi.ps1- SharePoint REST API operationstaskSchedule.ps1- Task schedulingdatatype.ps1- PowerShell Script DataTypetranscript.ps1- Logging and transcriptionworkingDates.ps1- Date handling and working day calculationsjob_create.ps1- Create a Jobjob_readVariable- Read Local Variable within a jobjob_threadLike- Simulate thread to run multi jobs at the same timejob_schedule- Schedule Job to runerror_handle.ps1- PowerShell Script Template with Error Handle Structurecondition.ps1- PowerShell Script Template with Condition Structurecondition_elseif.ps1- PowerShell Script Template with Multiples Conditions / elseif Structureloop_while.ps1- PowerShell Script Template with While Structureloop_for.ps1- PowerShell Script Template with For Structuredefine_variables.ps1- PowerShell Script Define Varibalesdefine_pipe.ps1- PowerShell Script Define commandlets pipewriteFile.ps1- Write output to a filearray_hashtable.ps1- Create arrays or hashtableshowProgress.ps1- Visualization of PowerShell Script progress
-
Design Patterns:
desing_pattern.ps1- PowerShell script template with standard structure
-
Application:
desktopApplication_createWindow.ps1- PowerShell .Net FrameWork Desktop Application CreationdesktopApplication_addTable.ps1- PowerShell .Net FrameWork Desktop Application Add Tables With DatadesktopApplication_addButton.ps1- PowerShell .Net FrameWork Desktop Application Add ButtondesktopApplication_commonWidget.ps1- PowerShell .Net FrameWork Desktop Application Common WidgetdesktopApplication_commonHandler.ps1- PowerShell .Net FrameWork Desktop Application Common Windows Handler
Python scripts for data processing and database interactions:
libraries.py- Common imports and dependenciesdatabase_readValue.py- Functions for reading from various databases (ODBC, Oracle, SQLAlchemy, Snowflake)save_excel.py- Excel file generation with formattingcolumn_validation.py- Data validation functionsdate_handle.py- Date manipulation utilitiesfile_updateValidation.py- File update validationnull_handle.py- Null value handlingreadFile.py- File reading utilitiesreceive_analystProcess.py- Data analysis processingsearch.py- Search and filtering functionsstreamingData.py- Data streaming operationsrunTerminal.py- Run Terminal Command from PythonWebScrapping.py- Getting data from web pages
notes.ipynb- Jupyter notebook with basic examples
SQL scripts for Snowflake operations:
cte_dataReusage.sql- Common Table Expressions for data reusecte.sql- CTE examplesdownstreamData.sql- Downstream data processingloadFiles.sql- File loading operationsloadFilesSTP.sql- Stored procedure for file loadingregexp.sql- Regular expression operations in SQLstageFileFormat.sql- Stage and file format creationcreate_database.sql- Create Databasecreate_wh.sql- Create Warehousegrant_access.sql- Grant access
- Windows PowerShell 5.1 or higher
- Python 3.x
- Git (with SSH key setup)
- Microsoft Access (for .accdb files)
- Snowflake account and SnowSQL/SnowCLI
- ODBC drivers for database connections
- Oracle client (if using Oracle databases)
Key libraries used (install via pip):
- snowflake-connector-python
- sqlalchemy
- pandas
- numpy
- openpyxl
- dateutil
- workdays
- pyodbc (for ODBC connections)
- cx_Oracle (for Oracle connections)
- Configure SSH keys for Git and secure connections
- Set up Snowflake key-pair authentication
- Configure database connection credentials
The typical workflow follows this pattern:
- PowerShell handlers initialize variables and execute files
- Python scripts process data and create parameters
- PowerShell processes execute commands
- SnowSQL/SnowCLI interacts with Snowflake database
- Scripts complete execution
---
title: Project Workflow
config:
flowchart:
htmlLabels: false
---
flowchart TB
POWERSHELL["Powershell Handler"] -->
BEGIN["Code Block Begin: Define Variable & Execute File for Python and SnowSQL/SnowCLI"]
PYPROCESS["Code Block Process: Execute commands"]
PYTHON@{ shape: procs, label: "Python: Create manual file parameters "}
PSPROCESS["Code Block Process: Execute commands"]
SNOWSQL("SnowSQL/SnowCLI")
DATABASE[(Snowflake)]
END["Code Block End: Script ends"]
BEGIN --> PYEXE["Python Exe File Path"] --> PYPROCESS --> PYTHON --> END
BEGIN --> PSEXE["PowerShell Exe File Path"] --> PSPROCESS --> SNOWSQL --> DATABASE --> END
- Always use key-pair authentication for secure communication
- Follow security policies for database access
- Protect private keys and sensitive information
- Follow the established design patterns in
desing_pattern.ps1 - Test scripts thoroughly before committing
This project is proprietary. All rights reserved by Marcos De Vargas.
- v1.0 - Initial release with comprehensive data engineering toolkit
- Date: March 17, 2026
Personal Profile/Resume LinkedIn
Email Outlook/iCloud
Phone Dominican Republic