Forum Discussion
torsten_FO
3 years agoHelper I
Report refresh starts "python.execute" command two times!
Hi all,
I use a small python script directly in an empty Table with "Python.Execute(...)" command. This script send data into a Database.
When I start a refresh in Power Query Editor, the script send only one dataset into the DB. It works fine.
But, If I start a refresh into the report, the script send two datasets into the DB!
I have inserted the Execute command into a small table:
let
Source = Table.FromRows(Json.Document(Binary.Decompress(Binary.FromText("i45WKk7NS4lPSSxJjC/Jj3dxUoqNBQA=", BinaryEncoding.Base64), Compression.Deflate)), let _t = ((type nullable text) meta [Serialized.Text = true]) in type table [Snap_Shot = _t]),
#"Changed Type" = Table.TransformColumnTypes(Source,{{"Snap_Shot", type text}}),
#"Send SnapShot" = Python.Execute("import pyodbc
username = 'USER'
password = 'PASS'
conn = pyodbc.connect('Driver={SQL Server};'
'Server=SERVER;'
'Database=Bestandsueberpruefung;'
'Trusted_Connection=yes;'
'uid=%s;pwd=%s' %(username, password))
cursor = conn.cursor()
cursor.execute('''
INSERT INTO t_bemerkung (bemerkung, id_matnr)
VALUES
('value from python', 3)
''')
conn.commit()
conn.close()")
in
#"Send SnapShot"
What is wrong???
Thanks
1 Reply
- v-yadongf-msftCommunity Support
Hi torsten_FO ,
Here's a blog which might be helpful to solve your problems:
Automate Your Power BI Dataset Refresh with Python - Pivotal BI
Best regards,
Yadong Fang
If this post helps, then please consider Accept it as the solution to help the other members find it more quickly.