Aşağıdaki betiği Orkestra E-Fatura programınızda, Logo Tanımları / Firmalar / X Firması / Efatura Uyarlamaları / X Uyarlama / Betik (Fatura) sekmesi altına yapıştırıldığında Günlük Döviz Raporu üzerindeki 1. Tür ve 2. tür fatura notlar alanında görünecektir.
CRTYPE = 20 Euro
EX.CRTYPE = 1 = USD
LG_EXCHANGE_023 = 023 Firma Numarası demek
LG_023_01_INVOICE = Firma dönem numarası
RATES1 = Günlük kur tablosundaki 1. Tür alanındaki kur bilgisi alır.
RATES2 = Günlük kur tablosundaki 2. Tür alanındaki kur bilgisi alır.
RATES3 = Günlük kur tablosundaki 3. Tür alanındaki kur bilgisi alır.
RATES4 = Günlük kur tablosundaki 4. Tür alanındaki kur bilgisi alır.
String sqlKur = "SELECT INV.LOGICALREF,INV.FICHENO,INV.DATE_,(SELECT TOP 1 RATES2 FROM LG_EXCHANGE_023 EX WHERE EX.EDATE<=INV.DATE_ AND EX.CRTYPE = 20 ORDER BY EX.EDATE DESC) as KUR FROM LG_023_01_INVOICE INV WHERE INV.LOGICALREF = "+$F{reference};
Object kurObj = executeSql(createSql(sqlKur));
if (kurObj != null && kurObj.getBigDecimal("KUR")>MathUtil.bigDecimal(0)){
ubl.addNote("€ Kur : "+MathUtil.format( kurObj.getBigDecimal("KUR"),"#,###.0000"));
}
-----------------------------------------------------------------------------------------------------------------------------------------
usd ve euro gözükmesi için;
String sqlKur = "SELECT INV.LOGICALREF,INV.FICHENO,INV.DATE_,(SELECT TOP 1 RATES2 FROM LG_EXCHANGE_009 EX WHERE EX.EDATE<=INV.DATE_ AND EX.CRTYPE = 20 ORDER BY EX.EDATE DESC) as KUR FROM LG_009_09_INVOICE INV WHERE INV.LOGICALREF = "+$F{reference};
String sqlKur2 = "SELECT INV.LOGICALREF,INV.FICHENO,INV.DATE_,(SELECT TOP 1 RATES2 FROM LG_EXCHANGE_009 EX WHERE EX.EDATE<=INV.DATE_ AND EX.CRTYPE = 1 ORDER BY EX.EDATE DESC) as KUR FROM LG_009_09_INVOICE INV WHERE INV.LOGICALREF = "+$F{reference};
Object kurObj = executeSql(createSql(sqlKur));
if (kurObj != null && kurObj.getBigDecimal("KUR")>MathUtil.bigDecimal(0)){
ubl.addNote("€ Kur : "+MathUtil.format( kurObj.getBigDecimal("KUR"),"#,###.0000"));
Object kurObj2 = executeSql(createSql(sqlKur2));
if (kurObj2 != null && kurObj2.getBigDecimal("KUR")>MathUtil.bigDecimal(0)){
ubl.addNote("$ Kur : "+MathUtil.format( kurObj2.getBigDecimal("KUR"),"#,###.0000"));
}
}
------------------------------------------------------------------------------------------------------------------------
Eğer LG_EXCHANGE_009 tablosu logoda yoksa L_DAILYEXCHANGES tablosu içerisinde olabilir
String sqlKur = "SELECT INV.LOGICALREF,INV.FICHENO,INV.DATE_,(SELECT TOP 1 RATES2 FROM L_DAILYEXCHANGES EX WHERE EX.EDATE<=INV.DATE_ AND EX.CRTYPE = 20 ORDER BY EX.EDATE DESC) as KUR FROM LG_011_06_INVOICE INV WHERE INV.LOGICALREF = "+$F{reference};
String sqlKur2 = "SELECT INV.LOGICALREF,INV.FICHENO,INV.DATE_,(SELECT TOP 1 RATES2 FROM L_DAILYEXCHANGES EX WHERE EX.EDATE<=INV.DATE_ AND EX.CRTYPE = 1 ORDER BY EX.EDATE DESC) as KUR FROM LG_011_06_INVOICE INV WHERE INV.LOGICALREF = "+$F{reference};
Object kurObj = executeSql(createSql(sqlKur));
if (kurObj != null && kurObj.getBigDecimal("KUR")>MathUtil.bigDecimal(0)){
ubl.addNote("€ Kur : "+MathUtil.format( kurObj.getBigDecimal("KUR"),"#,###.0000"));
Object kurObj2 = executeSql(createSql(sqlKur2));
if (kurObj2 != null && kurObj2.getBigDecimal("KUR")>MathUtil.bigDecimal(0)){
ubl.addNote("$ Kur : "+MathUtil.format( kurObj2.getBigDecimal("KUR"),"#,###.0000"));
}
}