05-15-2020 06:39 AM
Hi, I have few tables on SQL server like
abc_2020
abc_2019
abc_2018
I want to query the the table that has suffix as current year. I have specified the value
in the settings > table name-- ‘abc_’+ Date.now().getFullYear()
it’s throwing error.
Failure: Failed to retrieve metadata for table: “‘abc_’+Date”.“now()”.“getFullYear()”, Reason: Database ‘now()’ does not exist. Make sure that the name is entered correctly., Resolution: Database ‘now()’ does not exist. Make sure that the name is entered correctly.
When I hard-code the table name as abc_2020 it is working.
Can someone help me with this ?
05-19-2020 09:26 AM
I checked with Development and it looks like there is an error here already being investigated.
We’ll update this thread when it is addressed.
05-20-2020 08:33 AM
For now, you could use an upstream mapper snap to generate the table name, and then just use it, e.g. $tableName, from the SQL Select snap.
05-21-2020 02:29 AM
Thanks @Spiro_Taleski @jcampion
For now I have used mapper snap and it worked.
In the mapper I have created(tablename+year) - abc_Date.now().getFullYear() - $tablename
Instead, if I create only date part as variable Date.now().getFullYear() - $year How to pass this in table name filed in Select snap?
Table name = ‘abc_’+$year ?
05-21-2020 06:41 AM
Hi @Siva_Venna,
I think that would work. It seems like there’s a bug in the SQL snap’s expression evaluation where it’s choking on Date.now(), but if you already have the $year field I would think you can use ‘abc_’ + $year to get the tablename. Give it a try!
05-21-2020 06:57 AM
I gave a try it did not work. Hope the fix will resolve the issue.