R and HANA

Tmilinovic's Blog

Fetching data from HANA to R can be done by using two R packages:

  • RODBC, which uses preconfigured ODBC HANA Data Source
  • RJDBC, which uses HANA JDBC driver

The example code for both approaches is shown below. I have noticed that RODBC doesn’t fetch varchar text fields (for example „CustName“ from my calculation view „_SYS_BIC“.“etk.H10XSproject1/VBAK_ScrClcView2″), so I use RJDBC.


ch<-odbcConnect(„H10″,uid=“user“,pwd=“***“,DBMSencoding = „utf8“);

sql<-’select v.“SalesOrg“,v.“SoldToParty“,v.“Quarter“,sum(v.“NetValue“) AS „NetValue“ ‚
sql<-paste(sql, ‚from „_SYS_BIC“.“etk.H10XSproject1/VBAK_SCRCLCVIEW3″ v ‚)
sql<-paste(sql, ‚group by v.“SalesOrg“,v.“SoldToParty“,v.“Quarter“ ‚)

result <-sqlQuery(ch, sql,stringsAsFactors=FALSE)


jdbcDriver <- JDBC(driverClass=“com.sap.db.jdbc.Driver“, classPath=“C:/Program Files/sap/hdbclient/ngdbc.jar“)
jdbcConnection <- dbConnect(jdbcDriver, „jdbc:sap://hanahost:30015/?autocommit=false“,“user“,“password“)

sql<-’select v.“SalesOrg“,v.“CustName“,v.“Quarter“,sum(v.“NetValue“) ‚
sql<-paste(sql, ‚from „_SYS_BIC“.“etk.H10XSproject1/VBAK_ScrClcView2″ v ‚)
sql<-paste(sql, ‚group by v.“SalesOrg“,v.“CustName“,v.“Quarter“ ‚)

result <- dbGetQuery(jdbcConnection, sql)

sql<-’select * from ( select „CustName“,“Quarter“,“SumNetValue“,rank() over(order by „SumNetValue“ desc) as rank ‚
sql<-paste(sql, ‚from ( select „CustName“,“Quarter“,sum(„NetValue“) as „SumNetValue“ from emiltom.vbak group by „CustName“,“Quarter“ )) ‚)
sql<-paste(sql, ‚where rank <= 10 order by rank‘)

result <- dbGetQuery(jdbcConnection…

Ursprünglichen Post anzeigen 3 weitere Wörter

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:


Du kommentierst mit Deinem WordPress.com-Konto. Abmelden /  Ändern )

Google Foto

Du kommentierst mit Deinem Google-Konto. Abmelden /  Ändern )


Du kommentierst mit Deinem Twitter-Konto. Abmelden /  Ändern )


Du kommentierst mit Deinem Facebook-Konto. Abmelden /  Ändern )

Verbinde mit %s