Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
B
bcom-tp-etl-transformation-pipelines
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
general
bcom-tp-etl-transformation-pipelines
Commits
8ebc05c1
Commit
8ebc05c1
authored
Nov 12, 2023
by
Cristian Aguirre
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Outputs can be saved as excels files. "xlsx" formats in file_type
parent
91b0963a
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
10 additions
and
2 deletions
+10
-2
Generation.py
dags/components/Generation.py
+10
-2
No files found.
dags/components/Generation.py
View file @
8ebc05c1
...
@@ -2,6 +2,8 @@ from typing import Any, Dict
...
@@ -2,6 +2,8 @@ from typing import Any, Dict
import
os
import
os
import
json
import
json
import
pandas
as
pd
import
pandas
as
pd
from
openpyxl
import
load_workbook
from
openpyxl.utils.dataframe
import
dataframe_to_rows
from
airflow.utils.task_group
import
TaskGroup
from
airflow.utils.task_group
import
TaskGroup
from
airflow.operators.python
import
PythonOperator
from
airflow.operators.python
import
PythonOperator
from
airflow.models
import
Variable
from
airflow.models
import
Variable
...
@@ -134,6 +136,7 @@ def generate_and_deploy(command: str, intern_conn, params: Dict[str, Any], timez
...
@@ -134,6 +136,7 @@ def generate_and_deploy(command: str, intern_conn, params: Dict[str, Any], timez
iterator
=
get_iterator
(
tablename
,
chunksize
,
engine
)
iterator
=
get_iterator
(
tablename
,
chunksize
,
engine
)
iterator
=
iterator
[
"iterator"
]
iterator
=
iterator
[
"iterator"
]
logger
.
info
(
f
"Total de pasos para generar archivo resultado: {steps}"
)
logger
.
info
(
f
"Total de pasos para generar archivo resultado: {steps}"
)
workbook
=
None
for
step
in
range
(
steps
):
for
step
in
range
(
steps
):
logger
.
debug
(
f
"STEP: {step}"
)
logger
.
debug
(
f
"STEP: {step}"
)
header
=
True
if
step
==
0
else
False
header
=
True
if
step
==
0
else
False
...
@@ -151,11 +154,16 @@ def generate_and_deploy(command: str, intern_conn, params: Dict[str, Any], timez
...
@@ -151,11 +154,16 @@ def generate_and_deploy(command: str, intern_conn, params: Dict[str, Any], timez
if
header
:
if
header
:
with
pd
.
ExcelWriter
(
tmp_file
,
engine
=
"openpyxl"
,
mode
=
'w'
)
as
writer
:
with
pd
.
ExcelWriter
(
tmp_file
,
engine
=
"openpyxl"
,
mode
=
'w'
)
as
writer
:
dataframe
.
to_excel
(
writer
,
index
=
False
,
header
=
True
)
dataframe
.
to_excel
(
writer
,
index
=
False
,
header
=
True
)
workbook
=
load_workbook
(
tmp_file
)
sheet
=
workbook
[
'Sheet1'
]
else
:
else
:
with
pd
.
ExcelWriter
(
tmp_file
,
engine
=
"openpyxl"
,
mode
=
'a'
,
if_sheet_exists
=
'overlay'
)
as
writer
:
for
row
in
dataframe_to_rows
(
dataframe
,
header
=
False
,
index
=
False
)
:
dataframe
.
to_excel
(
writer
,
index
=
False
,
header
=
False
)
sheet
.
append
(
row
)
except
StopIteration
:
except
StopIteration
:
break
break
if
not
isinstance
(
workbook
,
type
(
None
)):
workbook
.
save
(
tmp_file
)
workbook
.
close
()
list_outputs
=
params
[
"s3_params"
]
list_outputs
=
params
[
"s3_params"
]
size
=
os
.
path
.
getsize
(
tmp_file
)
size
=
os
.
path
.
getsize
(
tmp_file
)
for
output
in
list_outputs
:
for
output
in
list_outputs
:
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment