Part 1 - If I just need to extract data from information views of SAP hana in excel, I know we can do it manually with UI where we establish connection, select DB and view, then select measure and dimension and data is downloaded in excel as Pivot. Can we do the same with excel VBA so that i can automate the end to end process within excel from connecting to selecting calculation view to providing measure and dimension to download report as pivot in excel. Also will we have to write a MDX within VBA code to mention measure and dimension.
Any sample code or guide for the same will be quite helpful.
Above case is when calculation view are in SAP HANA DB.
Part 2 - If CDS is part of ABAP, as per my understanding we use SAP business objects Analysis for connecting to view from excel and downloading the report. This also involves some manual UI steps like logon, connect etc. If I again have to automate the end to end process with VBA in this case where on click of a button my VBA code connects with ABAP CDS and download the data in excel as pivot so that I can process it further.
Any sample code or guide for the same will be quite helpful.
I am bit confused in multiple options available in excel to connect with SAP, manually as well as automated with VBA –
1)With ODBC, For which we need HDBODBC
ODBC Image
2)SAP Hana MDX provider –
MDX Provider
How do we get MDX option and how is it different from ODBC one – both available with SAP client installation?
Is the difference that with ODBC, we will use SQL query and it will download data from SAP Hana tables and not views (which are multidimensional cubes)
Hana MDX provider will download views using MDX and what about tables; will it support tables as well?
Can we automate both of these with VBA end to end from connection to getting data in excel?
3)For ABAP CDS, is the only option - SAP business objects Analysis
Can this be automated end to end with VBA?
Also posted on the SAP Community: https://answers.sap.com/questions/13084676/connecting-to-sap-hana-from-excel-vba-to-get-data.html
A company uses netsuites to make purchase orders and store sales information. The only way this company is able to access this information at the moment is through building netsuites reports
Is there a way SQL language could be written to access the netsuites data as some of the questions asked by the business need something a bit more complex than what netsuites reporting provides - and sound very easy using SQL language
I have experience in Oracle, mysql, and many other SQL languages so I would like to know how to set up a connection to the companies netsuites data so I can help write custom queries
Netsuite has SuiteAnalytics Connect, which is ODBC. It can be downloaded from a link at the very bottom the home screen of your Netsuite account.
After installation of the application bundle and connecting it to your Netsuite, you can write ORACLE SQL queries via Excel, Access, etc. My experience is that Netsuite uses Oracle SQL in ODBC queries and in Saved Search custom queries.
The way I understand it, the ODBC driver is a separately priced item from NetSuite. Once you have that, you could use Excel, Access, Crystal Reports or anything else that can use the ODBC driver to read the data and write queries against it.
The normal way to access NetSuite data is with SuiteScript -- javascript code that uses the nlapi* calls to get to the data.
You can access Netsuite backend using a number of different tools and it allows running Oracle SQL directly.
Netsuite provides JDBC, ADO.NET and ODBC if it was included in your licensing purchase. You can find the downloads from the main menu - lower left hand of the screen in Settings - Set Up SuiteAnalytics Connect.
ADO.net however is pretty worthless in SSIS as it doesn't allow parameter mapping or SQL from a variable value. I have yet to get the ODBC driver to work correctly - it can connect and show columns of a table but it won't validate saying "The ODBC Source.Outputs[ODBC Source Error Output].Columns[...] on the error output has properties that do not match the properties of its corresponding data source column."
The other options I'm looking into are Cozyroc and Kinsgwaysoft adapters for Netsuite. You could also do SOAP or REST connections if desired.
I've not used this, but there should as of 2014.2 there is an ODBC driver available for read access.
http://www.netsuite.com/portal/landing/2014-2/suiteanalytics.shtml
As previously mentioned, if you have it licensed you can download the ODBC driver from the Netsuite application. I tested some other adapters but found Netsuite's at least as good as the competitors and they provide timely security updates to the drivers as well as both 64 and 32 bit versions.
There are also metadata browsers that are on the net (example is URL below), the type of browser being based on which kind of access you are looking at (web services, verses ODBC, etc).
https://system.sandbox.netsuite.com/help/helpcenter/en_US/srbrowser/Browser2017_2/odbc/record/account.html
Within the application GUI there is information you need to connect using their ODBC connection (you need the account id and the role id). The URL is just odbcserver.xxxx.netsuite.com where xxx is specific to your environment you are accessing. Note that other adapters such as Cozyroc, etc. require the admin to setup connections in Netsuite for those.
Here is a list of the main metadata tables:
OA_FKEYS
OA_TABLES
OA_COLUMNS
In addition, note that the URL above does NOT include customization. Plus its not easily consumed by automation tools. But Netsuite provides a set of metadata views within the repository which you can use ODBC to pull from which includes all keys - foreign and primary. AND it does include customizations! I built simple set of ETL jobs that use standard ADO.NET driver within SSIS and the ODBC DSN to pull all the metadata and then use BIML to automatically generate all the extract ETL and related staging tables. You can also easily then use the metadata to detect changes in the underlying database.
Let me know if I can be any help with doing any of this.
There are 3rd party tools, like CData ODBC Adapter for NetSuite: http://www.cdata.com/drivers/netsuite/odbc/ . This tool allows you to run standard SQL against the NetSuite API. Note that the NetSuite API presents a very different data model from that of the native NetSuite ODBC.
With this tool, you install in onto your machine (Win in my case) and then after you configure the driver, you can run SQL against it (the driver config is where you specify your NS credentials, etc.).
It revolutionizes access to NetSuite data IMHO.
Download the Netsuite ODBC drivers, set up your DSN locally with server/credentials, Use SSIS pkgs to automate data extract and load onto you local DB. Use ADO.NET drivers if preferred. Then utilize those tables to create/deliver your complex reports using SQL (stored procedures) and Reporting Services. This will require SQL Standard license at minimum though.
Only API call can access the NetSuite data
You can't access to Netsuite data using sql language.
The only way to gain access to Netsuite from third party systems is to use SOAP request or PHP toolkit.
I am a newbie in Cognos. I am trying to create a report using report studio, I have the required package, and I want to create a report using a complex SQL query which has joins between three tables. Can anyone please give a suggestion to start building the report? Thanks!
How to write SQL for Cognos reports
FM is to create complex models. If you need a quick-and-dirty report you can specify custom SQL as the tutorial shows.
It would depend on how the data you see in Report Studio is modelled, typically a tool called Framework Manager is used connect to and model the source tables and views. Framework Manager creates the packages that you see in Report Studio, it can define relationships between entities like tables (if they're not already defined in the source database).
Not sure how to tell from Report Studio if the relationship has been defined properly other than trying to pull over fields from each table into the same Report Studio Query. It is best to talk to whoever designed the Framework Manager model or look at the model itself.
We are planning on creating reports to be run on the same computer that the database application is running on.
Can you tell me which of these is the best approach? (SQL Server Reporting Services or creating a rdlc ReportViewer report)
Also I tried to locate detailed rdlc ReportViewer report tutorials both in books and online and found none. It's probably because I'm looking in the wrong places.
We are also using VB.Net as the language.
All help will be appreciated.
In a nutshell, .rdlc is the client version. You cannot host these on the report server. These reports do not know how to fetch the data, you MUST get the data yourself and pass it to the report. For this reason, you cannot even preview the report while designing. ReportViewer.ProccessingMode = Local
The .rdl or server reports know how to fetch the data. You configure the datasource and upload them to the report server. Because of this, you can preview the reports while designing them. You can use the web/desktop ReportViewer control to run the reports from inside your app...like a proxy between your application and the report server.ReportViewer.ProccessingMode = Remote
I prefer rdl for any sql datasource, but rdlc is also good for cases where your datasource is very complex or can only be built through the application code. I think there might be ways to configure an object datasource for rdl but I haven't looked into that yet.
I have recently started to look at sql reporting services.
I have data stored in a database which has been encrypted with an AES cypher before being stored away.
I've had a look at building some reports using Microsoft Report Builder 2.0 and it seems quite nice and simple for knocking together some simple reports.
My question is: Can I decrypt this data before displaying it on a report? Is there anyway to run code with these reports?
Use a RDLC (C is for Client), and then look at the Microsoft.Reporting.WebForms and Microsoft.Reporting.WinForms namespaces.
This allows you to use code to generate your data, for example get your data from SQL Server then decrypt it as required before presenting it to the ReportViewer control.