# Buku "Python untuk GIS", Bab 24: Satu Perintah, Banyak Pekerjaan: NDVI, Validasi, dan Batch dengan Alat Processing
# Ekspresi 24.6: teks laporan untuk Atlas (bukan Python)
from qgis.core import QgsExpression, QgsExpressionContext, QgsExpressionContextUtils, QgsProject
batas = QgsProject.instance().mapLayersByName('Batas_KPH')[0]
teks = open("D:/Latihan/ekspresi_6_3.txt", encoding="utf-8").read()
ekspresi = QgsExpression(teks)
konteks = QgsExpressionContext(QgsExpressionContextUtils.globalProjectLayerScopes(batas))
konteks.setFeature(next(batas.getFeatures()))
print(ekspresi.evaluate(konteks))
