Querying the data type of a table/view
Is there a sql statement that will 'return' the data type of a specified table/view?
For instance column x of table y has data type int, is there a statement such as:
SELECT data_type FROM y WHERE column_name = 'x'
I know the above won't work but it gives the gist of what I am looking for.
SQL> select table_name, column_name, data_type, data_length, data_precision, data_scale
2 from user_tab_columns
3 where table_name = 'EMP';
TABLE_NA COLUMN_N DATA_TYP DATA_LENGTH DATA_PRECISION DATA_SCALE
EMP EMPNO NUMBER 22 4 0
EMP ENAME VARCHAR2 10
EMP JOB VARCHAR2 9
EMP MGR NUMBER 22 4 0
EMP HIREDATE DATE 7
EMP SAL NUMBER 22 7 2
EMP COMM NUMBER 22 7 2
EMP DEPTNO NUMBER 22 2 0
8 rows selected.
SQL> desc emp
Name Null? Type
EMPNO NOT NULL NUMBER(4)
ENAME VARCHAR2(10)
JOB VARCHAR2(9)
MGR NUMBER(4)
HIREDATE DATE
SAL NUMBER(7,2)
COMM NUMBER(7,2)
DEPTNO NUMBER(2)
SQL>Message was edited by:
Jens Petersen
Similar Messages
-
Querying the data type of objects in an Array?
I'm able to determine that an argument is an Array using the following query:
SELECT DATA_TYPE
FROM all_arguments
WHERE OBJECT_NAME = 'MY_PROCEDURE' AND ARGUMENT_NAME = 'MY_ARRAY_PARAM'
DATA_TYPE will be 'PL/SQL TABLE' if the argument/parameter is an array.
My question is: Is there a way to query what the type of the objects in the array should be? Like NVARCHAR2, VARCHAR2, RAW, DECIMAL, etc.
Any help is very appreciated!I guess the part I'm having trouble with is when the
Array is defined in a package because the type
doesn't get listed in "all_coll_types". well, the workaround here would be - the parsing of PACKAGE text - and finding your needed type of array:
SQL> create or replace package TEST_PACK as
2 TYPE test_type is table of varchar2(100);
3 end test_pack;
4 /
Package created
SQL>
SQL> create or replace package body TEST_PACK as
2 vc_array test_type;
3 begin
4 null;
5 end;
6 /
Package body created
SQL>
SQL> select * from user_source t
2 where name = 'TEST_PACK'
3 /
NAME TYPE LINE TEXT
TEST_PACK PACKAGE 1 package TEST_PACK as
TEST_PACK PACKAGE 2 TYPE test_type is table of varchar2(100);
TEST_PACK PACKAGE 3 end test_pack;
TEST_PACK PACKAGE BODY 1 package body TEST_PACK as
TEST_PACK PACKAGE BODY 2 vc_array test_type;
TEST_PACK PACKAGE BODY 3 begin
TEST_PACK PACKAGE BODY 4 null;
TEST_PACK PACKAGE BODY 5 end;
8 rows selected
SQL> -
How to pass the data from a input table to RFC data service?
Hi,
I am doing a prototype with VC, I'm wondering how VC pass the data from a table view to a backend data service? For example, I have one RFC in the backend system with a tabel type importing parameter, now I want to pass all the data from an input table view to the RFC, I guess it's possible but I don't know how to do it.
I try to create some events between the input table and data service, but seems there is no a system event can export the whole table to the backend data service.
Thanks for your answer.Thanks for your answer, I tried the solution 2, I create "Submit" button, and ser the mapping scope to be "All data rows", it only works when I select at least one row, otherwise the data would not be passed.
Another question is I have serveral imported table parameter, for each table I have one "submit" event, I want these tables to be submitted at the same time, but if I click the submit button in one table toolbar, I can only submit the table data which has a submit button clicked, for other tables, the data is not passed, how can I achieve it?
Thanks. -
Query regarding the data type for fetcing records from multiple ODS tables
hey guys;
i have a query regarding the data type for fetcing records from multiple ODS tables.
if i have 2 table with a same column name then in the datatype under parent row node i cant add 2 nodes with the same name.
can any one help with some suggestion.Hi Mudit,
One option would be to go as mentioned by Padamja , prefxing the table name to the column name or another would be to use the AS keyoword in your SQL statement.
AS is used to rename the column name when data is being selected from your DB.
So, the query Select ename as empname from emptable will return the data with column name as empname.
Regards,
Bhavesh -
How to retrieve the data type of a column of a table?
Hi,
I want to retrieve the data type of a column of a table. At the moment I am querying "OCI_ATTR_DATA_TYPE" attribute but it is returning SQLT_CHR for both varchar2 and nvarchar2 data type columns. I need to distinguish between these two data types columns separately. Is there any API through which I could get the exact data type of a column i.e. "nvarchar2"?
Thanks in advance.
HashimHi,
This is the Oracle C++ Call Interface (OCCI) forum - I'm not sure if you are using OCCI or OCI (Oracle Call Interface - the C interface) since you reference "OCI_ATTR_DATA_TYPE" which is more of an OCI focus than OCCI.
In any case, you might take a look at "OCI_ATTR_CHARSET_FORM" which takes the following values:
#define SQLCS_IMPLICIT 1 /* for CHAR, VARCHAR2, CLOB w/o a specified set */
#define SQLCS_NCHAR 2 /* for NCHAR, NCHAR VARYING, NCLOB */So, if you have a datatype of SQLT_CHR and OCI_ATTR_CHARSET_FORM is SQLCS_IMPLICIT then you have a varchar2 if it is SQLCS_NCHAR then you have an nvarchar2.
If you are using OCCI and not OCI then take a look at MetaData::ATTR_DATA_TYPE and MetaData::ATTR_CHARSET_FORM which expose OCI_ATTR_DATA_TYPE and OCI_ATTR_CHARSET_FORM respectively.
Perhaps that will get you what you want.
Regards,
Mark -
How to change the data type in the table ESLL for the field USERF2_NUM ?
Hello Friends,
I have a requirement in which one of the change is to convert the data type of the field 'USERF2_NUM' in the table 'ESLL' from 'QUAN' to 'CHAR'.
How do i do it if i have an access to change it..........i think i should also check the impact of the change if done.
Kindly tell me as my requirement starts with this small change.
Regards,
Rajesh KumarThanks for the reply Sowmya.
I would like to know 2 things.
1. Is it ok to change the data type of the field 'USERF2_NUM ' which is in the table ESLL. from quan to char.
2. The table ESLL already has entries. if we change the data type from QUAN to CHAR what is the effect on the existing entries of the table .
Kindly reply me back.
Thanks & Regards,
Rajesh Kumar -
How to get the Data type of the Internal Table.
How can i get the data types used to create an internal table
TYPES : BEGIN OF t_makt,
matnr TYPE matnr,
maktx TYPE maktx,
END OF t_makt.
Like this some function will give me which data types i have used for the internal table at run time.Use the FM ..
data : int_fcat type SLIS_T_FIELDCAT_ALV.
REUSE_ALV_FIELDCATALOG_MERGE ..
CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
EXPORTING
I_PROGRAM_NAME = sy-repid
I_INTERNAL_TABNAME = 'IMAT' <-- this is your internal table
I_INCLNAME = sy-repid
CHANGING
CT_FIELDCAT = int_fcat <--- this contains all the fields along with their characteristics ...
EXCEPTIONS
INCONSISTENT_INTERFACE = 1
PROGRAM_ERROR = 2
OTHERS = 3. -
Activation error while changing the data type of a field of a table
hi friends,
i am facing one problem while changing a data type of a field of a table.
i just created one table(Yqm32) .i have assigned charcter data type to one field(ztotal_count) .now i want to change this charcter data type to numeric data type.
while changing to NUMC data type activation error is comming as below.
Table is not yet classified
Field ZTOTAL_COUNT: Type change
ALTER TABLE is not possible
Structure change at field level (convert table YQM32)
Check on table YQM32 resulted in errors
Table YQM32 could not be activated
(E- Structure change at field level (convert table YQM32)
plz suggest.i need to change the data type from char to numc.
Thanks & RegardsHi Pabitra......
From the SE11 change the table as u wanted and then from menubar select
UTILITIES--> DATABASE UTILITY
It will open database utility
there u select the Activate and adjust database button.
then the database table will get adjusted.
just try it once.........
Suresh...... -
How to Find the Data Type of the Field In a Database Table
Hi Experts,
I'm currently working on a program which needs to find out the data type of the given field in a database table. In addition to accessing DD03L directly, is there any other workaround such as function module to help me achieve this? It would be helpful if a demo example could be provided.
Thanks a lot.Hi,
Use this..
DESCRIBE FIELD dobj TYPE typ.
write typ.
type will contain the data type of the object.
and check this thread also....
Re: How to get datatype of fields in dynamic structures
Cheers,
Simha.
Reward all the helpful answers.. -
Modify the Field Type of standard Table fields in a Query
Hello. I have a question.
Is there a way to "modify" the field type for standard table fields that are included in a Query?
I made a simple query out of a join of tables, but several fields have a lot of decimals, and I would like to present them in the query without any decimals, just as a regular "N" field.
I tried the possibility of creating extra local fields where all I do is transfer the value to the new "N" field, but I have many fields like this, so if there's a better way; I'd prefer that.
Maybe somewhere in the InfoSet there's a way to modify the type of the standard table fields?
Thank you.Hi,
This document may help you out.
[http://help.sap.com/saphelp_erp60_sp/helpdata/en/d2/cb4468455611d189710000e8322d00/frameset.htm|http://help.sap.com/saphelp_erp60_sp/helpdata/en/d2/cb4468455611d189710000e8322d00/frameset.htm]
Cheers, -
How to find the Column data type changes in table
Hi All,
I need to find out the column data type changes where made recently in table .
How do i check past changes in column data type. Any data dictionary are there to find out the data type changes in the column .
Thanks in advance..<FONT FACE="Arial" size=2 color="2D0000">
You have the answer on hand (user_arguments / all_arguments)!
SQL> desc user_arguments
Name Null? Typ
OBJECT_NAME VARCHAR2(30)
PACKAGE_NAME VARCHAR2(30)
OBJECT_ID NOT NULL NUMBER
OVERLOAD VARCHAR2(40)
ARGUMENT_NAME VARCHAR2(30)
POSITION NOT NULL NUMBER
SEQUENCE NOT NULL NUMBER
DATA_LEVEL NOT NULL NUMBER
DATA_TYPE VARCHAR2(30) --> Data Type
DEFAULT_VALUE LONG
DEFAULT_LENGTH NUMBER
IN_OUT VARCHAR2(9) -->Argument direction (IN,OUT,or IN/OUT)
DATA_LENGTH NUMBER
DATA_PRECISION NUMBER
DATA_SCALE NUMBER
RADIX NUMBER
CHARACTER_SET_NAME VARCHAR2(44)
TYPE_OWNER VARCHAR2(30)
TYPE_NAME VARCHAR2(30)
TYPE_SUBNAME VARCHAR2(30)
TYPE_LINK VARCHAR2(128)
PLS_TYPE VARCHAR2(30)
CHAR_LENGTH NUMBER
CHAR_USED VARCHAR2(1)
Look for Data_Type where IN_OUT say OUT. That will be the data type retruned by that function.
Edited :
or POSITION in argument list,or null for function return value
-SK
</FONT> -
Query the data between two tables
Need help for query the data between two tables
Table 1: Time sheet
P.ID P.Name EmpID HoursSpend DateTime
c12234 Test 25 4 06/12/2013
c12234 Test 25 7 06/13/2013
c12234 Test 25 8 06/15/2013
c12234 Test 5 3 06/21/2013
c12234 Test 2 5 07/15/2013
c12234 Test 25 4 07/21/2013
Table 2: cost table
EmpID FromDate ToDate Rate
25 05/01/2013 06/30/2013 250
2 04/01/2013 05/31/2013 150
25 07/01/2013 09/30/2013 300
Output
P.ID P.Name EmpID HoursSpend DateTime Rate Total (HoursSond x Rate)
c12234 Test 25 4 06/12/2013 250 1000 (4*250)
c12234 Test 25 7 06/13/2013 250 1750
c12234 Test 25 8 06/15/2013 250
2000
c12234 Test 25 4 07/21/2013 300
1200
c12234 Test 2 5 07/15/2013 150
750
===========================================
Total 28
6700
============================================
Here EmpID =2 don't have rate in the cost table on july month should be pick from last entry from cost table.Hi Gopal,
According to your description, it seems that the output needn’t include the row when EmpID=2. Because the DateTime for it in Table1 doesn’t included between FromDate column and ToDate column. After testing the issue in my environment, we can refer to the
query like below to achieve your requirement:
SELECT time.*,cost.EmpID,cost.Rate,(time.HoursSpend * cost.Rate)as [Total (HoursSond x Rate)]
FROM [Time sheet] as time
INNER JOIN
[cost table]as cost
ON time.EmpID = cost.EmpID
AND time.DateTime BETWEEN cost.FromDate AND cost.ToDate
If there are any other questions, please feel free to ask.
Thanks,
Katherine Xiong
Katherine Xiong
TechNet Community Support -
ODI 10g Load table havfing XMLTYPE as one of the data type
I'm trying load data from source to target(Both Oracle) same table. The table has XMLTYPE as one of the data type. I can load the data, if I exclude that one particular column.
Is there any way to load the data from that XMLTYPE column as well? Please provide your input.
Source and traget has the same table structure.
Version: ODI 10G
below is the sample table structure.
CREATE TABLE APPLICATION
APPLID VARCHAR2(20 BYTE) NOT NULL,
JOBTYPE VARCHAR2(20 BYTE),
USRID VARCHAR2(20 BYTE) NOT NULL,
APPDOC SYS.XMLTYPE,
APPLSTATUS VARCHAR2(30 BYTE),
APPLDATE DATE
ThanksHi Pankaj,
Remember that 1 character is not equal to 1 byte anymore while numbers/hexadecimals are still.
So, if you have structures that are a mixture of characters and integers/hexadecimals etc, you can not move data from structure to structure as easily as before.
In code you mentioned:
LOOP AT L_TAB INTO L_REC.
APPEND L_REC TO LIST_TAB.
ENDLOOP.
Avoid moving directly from L_REC to LIST_TAB. You can try to define a work area (WA_TAB) for LIST_TAB and use a MOVE-CORRESPONDING from L_REC to the WA_TAB. Then append WA_TAB.
If the field names from L_REC do not match the field names in LIST_TAB, you can manually move each field value to the correct field in the work area.
Reward points if this solves your issue -
Hi All,
I'm still struggling with the same cube and this is my 3rd post and once i fix some thing the other breaks. Please forgive me. When i process my cube i'm getting the error:
Errors in the back-end database access module. OLE DB was unable to convert a value to the data type requested for column 5.
My question is when the error says column 5 (is it the column 5 in the DSV?) or is it the column 5 in the DIMENSION list?
My next question is the DSV Query works perfectly fine , so why this error in cube? This is what i have in the query in DSV.
Please need help. In the below query both the column 5 (ArEASSIGNED TO VENDOR) in the CUBE and underlying table have the same data type and length VARCHAR(4000). Why is the process failing still?
SELECT [High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[compliancejoin]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_0],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingsector]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_1],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseclosedflag]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_2],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casehasvendorinfo]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_3],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingstatus]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_4],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assignedtovendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_5],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reassignedtovendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_6],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[currentvendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_7],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoiced]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSInvoiced0_8],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoicedstatus]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_9],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casecloseddateid]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_10],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assignedtovendordateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_11],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reassigneddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_12],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[currentassigneddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_13],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingduedateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_14],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendormoweddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_15],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[captypename] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_16],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casetype] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseType0_17],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casenumbersubgroup] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_18],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casetownship] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_19],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casestatus] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseStatus0_20],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseopendateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_21],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casereferredtolegalflag]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_22],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casemacinitiatedflag] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_23],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseconversionstatusdesc]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_24],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reasonforinvestigation] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_25],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[investigationopendateid]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_26],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[receiveddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_27],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assigned_department_staff]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_28],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseinitiator] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_29],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendorinvoiceamount] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_30],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[inspection_result] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_31],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reason_for_complaint] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_32],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendor_action] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_33],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[complaint_source] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_34],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[contractcompliancevendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_35],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoicedstatusdateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_36],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[date_of_complaint_id] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_37],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[date_of_inspection_id] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_38],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casenumber] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseNumber0_39],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[parcelnumber] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_40],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[row_index] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSROW_INDEX0_41]
FROM (SELECT CASE Isnumeric(
accela_staging.dbo.fact_highweedsandgrassdetails.vendorinvoiceamount)
WHEN 1 THEN Cast(
fact_highweedsandgrassdetails.vendorinvoiceamount AS
VARCHAR(
10))
END AS
Total_Dollar_Amount,
fact_highweedsandgrassdetails.casenumber,
fact_highweedsandgrassdetails.row_index,
fact_highweedsandgrassdetails.mowingsector,
fact_highweedsandgrassdetails.caseclosedflag,
fact_highweedsandgrassdetails.casecloseddateid,
fact_highweedsandgrassdetails.maccomments,
fact_highweedsandgrassdetails.lastfeeinvoicedateid,
fact_highweedsandgrassdetails.casehasvendorinfo,
fact_highweedsandgrassdetails.mowingstatus,
fact_highweedsandgrassdetails.receiveddateid,
fact_highweedsandgrassdetails.assignedtovendordateid,
fact_highweedsandgrassdetails.assignedtovendor,
fact_highweedsandgrassdetails.reassigneddateid,
fact_highweedsandgrassdetails.reassignedtovendor,
fact_highweedsandgrassdetails.currentvendor,
fact_highweedsandgrassdetails.currentassigneddateid,
fact_highweedsandgrassdetails.mowingduedateid,
fact_highweedsandgrassdetails.vendormoweddateid,
fact_highweedsandgrassdetails.invoiced,
fact_highweedsandgrassdetails.invoicedstatus,
fact_highweedsandgrassdetails.invoicedstatusdateid,
fact_highweedsandgrassdetails.vendorinvoicenumber,
fact_highweedsandgrassdetails.vendorcomments,
fact_casedetails.captypename,
fact_casedetails.casenumbersubgroup,
fact_casedetails.casetype,
fact_casedetails.township AS
CaseTownship,
fact_casedetails.casestatus,
fact_casedetails.caseopendateid,
fact_casedetails.referredtolegalflag AS
CaseReferredToLegalFlag,
fact_casedetails.macinitiatedflag AS
CaseMACInitiatedFlag,
fact_casedetails.conversionstatusdesc AS
CaseConversionStatusDesc,
fact_casedetails.assignedstaff AS
CaseAssignedStaff,
fact_casedetails.completedstaff AS
CaseCompletedStaff,
fact_casedetails.closedbystaff AS
CaseClosedByStaff,
fact_casedetails.initiator AS
CaseInitiator,
fact_casedetails.reasonforinvestigation,
fact_casedetails.primaryaddress,
fact_casedetails.parcelnumber,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
DECIMAL(6, 2))
AS
DaysOpen,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE
(fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
NUMERIC(9, 2))
* 24 AS
HoursOpenToMow,
Cast(Datediff([day],
fact_highweedsandgrassdetails.assignedtovendordate,
COALESCE
(fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
NUMERIC(9, 2))
* 24 AS
HoursAssignedToMow,
CASE
WHEN mowingstatus = 'Mowed'
OR mowingstatus = 'Closed' THEN 1
ELSE 0
END AS
NumberComplete,
fact_highweedsandgrassdetails.recordimportdatetime,
fact_casedetails.macsiebelnumber,
fact_highweedsandgrassdetails.mowingduedate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.lastfeeinvoicedate,
fact_highweedsandgrassdetails.investigationopendatetime,
fact_highweedsandgrassdetails.investigationopendate,
fact_highweedsandgrassdetails.investigationopendateid,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
( vendormoweddatetime IS NOT NULL
AND vendormoweddatetime <=
fact_highweedsandgrassdetails.casecloseddate ) THEN
fact_highweedsandgrassdetails.vendormoweddatetime
ELSE
CASE
WHEN (
fact_highweedsandgrassdetails.casecloseddate IS
NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate
<=
fact_highweedsandgrassdetails.recordimportdatetime )
THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)) * 24 AS
AbatementDurationHoursOLD,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate) IS
NOT NULL THEN COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate)
ELSE
CASE
WHEN ( fact_highweedsandgrassdetails.casecloseddate IS NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime ) THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)) * 24 AS
AbatementDurationHours,
fact_casedetails.assigneddepartment,
COALESCE (fact_casedetails.assignedstaff, '[null]')
+ '/'
+ COALESCE (fact_casedetails.assigneddepartment, '[null]') AS
Assigned_Department_Staff,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.receiveddatetime,
fact_highweedsandgrassdetails.assignedtovendordate,
fact_highweedsandgrassdetails.vendorinvoiceamount,
fact_highweedsandgrassdetails.invoicedstatusdate,
fact_highweedsandgrassdetails.complaint_source,
fact_highweedsandgrassdetails.inspection_result,
fact_highweedsandgrassdetails.reason_for_complaint,
fact_highweedsandgrassdetails.contractcompliancevendor,
fact_highweedsandgrassdetails.vendor_action,
fact_highweedsandgrassdetails.date_of_complaint_id,
fact_highweedsandgrassdetails.date_of_inspection_id,
CONVERT(INT, Replace(Replace(fact_highweedsandgrassdetails.casenumber,
'HWG', 0)
, '-', 0)) AS compliancejoin,
fact_highweedsandgrassdetails.maccomments AS Expr1,
dbo.dim_highweedscensustracts.b1_census_tract
FROM dbo.fact_highweedsandgrassdetails
INNER JOIN dbo.fact_casedetails
ON fact_highweedsandgrassdetails.casenumber =
fact_casedetails.casenumber
INNER JOIN dbo.dim_highweedscensustracts
ON fact_highweedsandgrassdetails.casenumber =
dbo.dim_highweedscensustracts.casenumber
GROUP BY fact_highweedsandgrassdetails.casenumber,
fact_highweedsandgrassdetails.row_index,
fact_highweedsandgrassdetails.mowingsector,
fact_highweedsandgrassdetails.caseclosedflag,
fact_highweedsandgrassdetails.casecloseddateid,
fact_highweedsandgrassdetails.maccomments,
fact_highweedsandgrassdetails.lastfeeinvoicedateid,
fact_highweedsandgrassdetails.casehasvendorinfo,
fact_highweedsandgrassdetails.mowingstatus,
fact_highweedsandgrassdetails.receiveddateid,
fact_highweedsandgrassdetails.assignedtovendordateid,
fact_highweedsandgrassdetails.assignedtovendor,
fact_highweedsandgrassdetails.reassigneddateid,
fact_highweedsandgrassdetails.reassignedtovendor,
fact_highweedsandgrassdetails.currentvendor,
fact_highweedsandgrassdetails.currentassigneddateid,
fact_highweedsandgrassdetails.mowingduedateid,
fact_highweedsandgrassdetails.vendormoweddateid,
fact_highweedsandgrassdetails.invoiced,
fact_highweedsandgrassdetails.invoicedstatus,
fact_highweedsandgrassdetails.invoicedstatusdateid,
fact_highweedsandgrassdetails.vendorinvoicenumber,
fact_highweedsandgrassdetails.vendorcomments,
fact_casedetails.captypename,
fact_casedetails.casenumbersubgroup,
fact_casedetails.casetype,
fact_casedetails.township,
fact_casedetails.casestatus,
fact_casedetails.caseopendateid,
fact_casedetails.referredtolegalflag,
fact_casedetails.macinitiatedflag,
fact_casedetails.conversionstatusdesc,
fact_casedetails.assignedstaff,
fact_casedetails.completedstaff,
fact_casedetails.closedbystaff,
fact_casedetails.initiator,
fact_casedetails.reasonforinvestigation,
fact_casedetails.primaryaddress,
fact_casedetails.parcelnumber,
fact_highweedsandgrassdetails.vendormoweddatetime,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
Cast(Datediff([day],
fact_highweedsandgrassdetails.assignedtovendordate,
COALESCE (
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
CASE
WHEN mowingstatus = 'Mowed'
OR mowingstatus = 'Closed' THEN 1
ELSE 0
END,
fact_highweedsandgrassdetails.recordimportdatetime,
fact_casedetails.macsiebelnumber,
fact_highweedsandgrassdetails.mowingduedate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.lastfeeinvoicedate,
fact_highweedsandgrassdetails.investigationopendatetime,
fact_highweedsandgrassdetails.investigationopendate,
fact_highweedsandgrassdetails.investigationopendateid,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
( vendormoweddatetime IS NOT NULL
AND vendormoweddatetime <=
fact_highweedsandgrassdetails.casecloseddate ) THEN
fact_highweedsandgrassdetails.vendormoweddatetime
ELSE
CASE
WHEN (
fact_highweedsandgrassdetails.casecloseddate
IS NOT NULL
AND
fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime )
THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE
fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)),
Cast(Datediff(ss,
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate) IS
NOT NULL THEN COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate)
ELSE
CASE
WHEN
( fact_highweedsandgrassdetails.casecloseddate IS NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime ) THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(18, 2)) * 60,
fact_casedetails.assigneddepartment,
COALESCE (fact_casedetails.assignedstaff, '[null]')
+ '/'
+ COALESCE (fact_casedetails.assigneddepartment, '[null]'),
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.receiveddatetime,
fact_highweedsandgrassdetails.assignedtovendordate,
fact_highweedsandgrassdetails.vendorinvoiceamount,
fact_highweedsandgrassdetails.invoicedstatusdate,
fact_highweedsandgrassdetails.complaint_source,
fact_highweedsandgrassdetails.inspection_result,
fact_highweedsandgrassdetails.reason_for_complaint,
fact_highweedsandgrassdetails.contractcompliancevendor,
fact_highweedsandgrassdetails.vendor_action,
fact_highweedsandgrassdetails.date_of_complaint_id,
fact_highweedsandgrassdetails.date_of_inspection_id,
CONVERT(INT, Replace(
Replace(fact_highweedsandgrassdetails.casenumber, 'HWG', 0)
, '-', 0)),
fact_highweedsandgrassdetails.maccomments,
dbo.dim_highweedscensustracts.b1_census_tract) AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS]
ORDER BY [High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[compliancejoin]
ASC
SVI just counted the columns from the top:
1) compliancejoin, 2) mowingsector, 3) caseclosedflag, 4) casehasvendorinfo, 5) mowingstatus, 6) assignedtovendor.
I see now that your subject line talks about column 6, but you say column 5 in body of your original post.
I don't know anything about cubes, but apparently there is some mapping problem when you run it from SSAS. (I assume it is SSAS, a part of the product I'm entirely ignorant of.) I figured that if you had got tripped by the zero-based numbering, you
might be staring on the wrong column.
Erland Sommarskog, SQL Server MVP, [email protected] -
Hi All,
I'm still struggling with the same cube and this is my 3rd post and once i fix some thing the other breaks. Please forgive me. When i process my cube i'm getting the error:
Errors in the back-end database access module. OLE DB was unable to convert a value to the data type requested for column 5.
My question is when the error says column 5 (is it the column 5 in the DSV?) or is it the column 5 in the DIMENSION list?
My next question is the DSV Query works perfectly fine , so why this error in cube? This is what i have in the query in DSV.
Please need help. In the below query both the column 5 (ArEASSIGNED TO VENDOR) in the CUBE and underlying table have the same data type and length VARCHAR(4000). Why is the process failing still?
SELECT [High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[compliancejoin]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_0],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingsector]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_1],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseclosedflag]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_2],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casehasvendorinfo]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_3],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingstatus]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_4],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assignedtovendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_5],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reassignedtovendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_6],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[currentvendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_7],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoiced]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSInvoiced0_8],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoicedstatus]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_9],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casecloseddateid]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_10],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assignedtovendordateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_11],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reassigneddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_12],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[currentassigneddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_13],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[mowingduedateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_14],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendormoweddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_15],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[captypename] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_16],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casetype] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseType0_17],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casenumbersubgroup] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_18],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casetownship] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_19],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casestatus] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseStatus0_20],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseopendateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_21],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casereferredtolegalflag]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_22],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casemacinitiatedflag] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_23],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseconversionstatusdesc]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_24],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reasonforinvestigation] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_25],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[investigationopendateid]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_26],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[receiveddateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_27],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[assigned_department_staff]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_28],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[caseinitiator] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_29],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendorinvoiceamount] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_30],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[inspection_result] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_31],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[reason_for_complaint] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_32],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[vendor_action] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_33],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[complaint_source] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_34],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[contractcompliancevendor]
AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_35],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[invoicedstatusdateid] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_36],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[date_of_complaint_id] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_37],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[date_of_inspection_id] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_38],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[casenumber] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSCaseNumber0_39],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[parcelnumber] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS0_40],
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[row_index] AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTSROW_INDEX0_41]
FROM (SELECT CASE Isnumeric(
accela_staging.dbo.fact_highweedsandgrassdetails.vendorinvoiceamount)
WHEN 1 THEN Cast(
fact_highweedsandgrassdetails.vendorinvoiceamount AS
VARCHAR(
10))
END AS
Total_Dollar_Amount,
fact_highweedsandgrassdetails.casenumber,
fact_highweedsandgrassdetails.row_index,
fact_highweedsandgrassdetails.mowingsector,
fact_highweedsandgrassdetails.caseclosedflag,
fact_highweedsandgrassdetails.casecloseddateid,
fact_highweedsandgrassdetails.maccomments,
fact_highweedsandgrassdetails.lastfeeinvoicedateid,
fact_highweedsandgrassdetails.casehasvendorinfo,
fact_highweedsandgrassdetails.mowingstatus,
fact_highweedsandgrassdetails.receiveddateid,
fact_highweedsandgrassdetails.assignedtovendordateid,
fact_highweedsandgrassdetails.assignedtovendor,
fact_highweedsandgrassdetails.reassigneddateid,
fact_highweedsandgrassdetails.reassignedtovendor,
fact_highweedsandgrassdetails.currentvendor,
fact_highweedsandgrassdetails.currentassigneddateid,
fact_highweedsandgrassdetails.mowingduedateid,
fact_highweedsandgrassdetails.vendormoweddateid,
fact_highweedsandgrassdetails.invoiced,
fact_highweedsandgrassdetails.invoicedstatus,
fact_highweedsandgrassdetails.invoicedstatusdateid,
fact_highweedsandgrassdetails.vendorinvoicenumber,
fact_highweedsandgrassdetails.vendorcomments,
fact_casedetails.captypename,
fact_casedetails.casenumbersubgroup,
fact_casedetails.casetype,
fact_casedetails.township AS
CaseTownship,
fact_casedetails.casestatus,
fact_casedetails.caseopendateid,
fact_casedetails.referredtolegalflag AS
CaseReferredToLegalFlag,
fact_casedetails.macinitiatedflag AS
CaseMACInitiatedFlag,
fact_casedetails.conversionstatusdesc AS
CaseConversionStatusDesc,
fact_casedetails.assignedstaff AS
CaseAssignedStaff,
fact_casedetails.completedstaff AS
CaseCompletedStaff,
fact_casedetails.closedbystaff AS
CaseClosedByStaff,
fact_casedetails.initiator AS
CaseInitiator,
fact_casedetails.reasonforinvestigation,
fact_casedetails.primaryaddress,
fact_casedetails.parcelnumber,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
DECIMAL(6, 2))
AS
DaysOpen,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE
(fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
NUMERIC(9, 2))
* 24 AS
HoursOpenToMow,
Cast(Datediff([day],
fact_highweedsandgrassdetails.assignedtovendordate,
COALESCE
(fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime)) AS
NUMERIC(9, 2))
* 24 AS
HoursAssignedToMow,
CASE
WHEN mowingstatus = 'Mowed'
OR mowingstatus = 'Closed' THEN 1
ELSE 0
END AS
NumberComplete,
fact_highweedsandgrassdetails.recordimportdatetime,
fact_casedetails.macsiebelnumber,
fact_highweedsandgrassdetails.mowingduedate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.lastfeeinvoicedate,
fact_highweedsandgrassdetails.investigationopendatetime,
fact_highweedsandgrassdetails.investigationopendate,
fact_highweedsandgrassdetails.investigationopendateid,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
( vendormoweddatetime IS NOT NULL
AND vendormoweddatetime <=
fact_highweedsandgrassdetails.casecloseddate ) THEN
fact_highweedsandgrassdetails.vendormoweddatetime
ELSE
CASE
WHEN (
fact_highweedsandgrassdetails.casecloseddate IS
NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate
<=
fact_highweedsandgrassdetails.recordimportdatetime )
THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)) * 24 AS
AbatementDurationHoursOLD,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate) IS
NOT NULL THEN COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate)
ELSE
CASE
WHEN ( fact_highweedsandgrassdetails.casecloseddate IS NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime ) THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)) * 24 AS
AbatementDurationHours,
fact_casedetails.assigneddepartment,
COALESCE (fact_casedetails.assignedstaff, '[null]')
+ '/'
+ COALESCE (fact_casedetails.assigneddepartment, '[null]') AS
Assigned_Department_Staff,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.receiveddatetime,
fact_highweedsandgrassdetails.assignedtovendordate,
fact_highweedsandgrassdetails.vendorinvoiceamount,
fact_highweedsandgrassdetails.invoicedstatusdate,
fact_highweedsandgrassdetails.complaint_source,
fact_highweedsandgrassdetails.inspection_result,
fact_highweedsandgrassdetails.reason_for_complaint,
fact_highweedsandgrassdetails.contractcompliancevendor,
fact_highweedsandgrassdetails.vendor_action,
fact_highweedsandgrassdetails.date_of_complaint_id,
fact_highweedsandgrassdetails.date_of_inspection_id,
CONVERT(INT, Replace(Replace(fact_highweedsandgrassdetails.casenumber,
'HWG', 0)
, '-', 0)) AS compliancejoin,
fact_highweedsandgrassdetails.maccomments AS Expr1,
dbo.dim_highweedscensustracts.b1_census_tract
FROM dbo.fact_highweedsandgrassdetails
INNER JOIN dbo.fact_casedetails
ON fact_highweedsandgrassdetails.casenumber =
fact_casedetails.casenumber
INNER JOIN dbo.dim_highweedscensustracts
ON fact_highweedsandgrassdetails.casenumber =
dbo.dim_highweedscensustracts.casenumber
GROUP BY fact_highweedsandgrassdetails.casenumber,
fact_highweedsandgrassdetails.row_index,
fact_highweedsandgrassdetails.mowingsector,
fact_highweedsandgrassdetails.caseclosedflag,
fact_highweedsandgrassdetails.casecloseddateid,
fact_highweedsandgrassdetails.maccomments,
fact_highweedsandgrassdetails.lastfeeinvoicedateid,
fact_highweedsandgrassdetails.casehasvendorinfo,
fact_highweedsandgrassdetails.mowingstatus,
fact_highweedsandgrassdetails.receiveddateid,
fact_highweedsandgrassdetails.assignedtovendordateid,
fact_highweedsandgrassdetails.assignedtovendor,
fact_highweedsandgrassdetails.reassigneddateid,
fact_highweedsandgrassdetails.reassignedtovendor,
fact_highweedsandgrassdetails.currentvendor,
fact_highweedsandgrassdetails.currentassigneddateid,
fact_highweedsandgrassdetails.mowingduedateid,
fact_highweedsandgrassdetails.vendormoweddateid,
fact_highweedsandgrassdetails.invoiced,
fact_highweedsandgrassdetails.invoicedstatus,
fact_highweedsandgrassdetails.invoicedstatusdateid,
fact_highweedsandgrassdetails.vendorinvoicenumber,
fact_highweedsandgrassdetails.vendorcomments,
fact_casedetails.captypename,
fact_casedetails.casenumbersubgroup,
fact_casedetails.casetype,
fact_casedetails.township,
fact_casedetails.casestatus,
fact_casedetails.caseopendateid,
fact_casedetails.referredtolegalflag,
fact_casedetails.macinitiatedflag,
fact_casedetails.conversionstatusdesc,
fact_casedetails.assignedstaff,
fact_casedetails.completedstaff,
fact_casedetails.closedbystaff,
fact_casedetails.initiator,
fact_casedetails.reasonforinvestigation,
fact_casedetails.primaryaddress,
fact_casedetails.parcelnumber,
fact_highweedsandgrassdetails.vendormoweddatetime,
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
Cast(Datediff([day],
fact_highweedsandgrassdetails.receiveddatetime,
COALESCE (
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
Cast(Datediff([day],
fact_highweedsandgrassdetails.assignedtovendordate,
COALESCE (
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.recordimportdatetime))
AS
NUMERIC(9, 2)),
CASE
WHEN mowingstatus = 'Mowed'
OR mowingstatus = 'Closed' THEN 1
ELSE 0
END,
fact_highweedsandgrassdetails.recordimportdatetime,
fact_casedetails.macsiebelnumber,
fact_highweedsandgrassdetails.mowingduedate,
fact_highweedsandgrassdetails.vendormoweddate,
fact_highweedsandgrassdetails.lastfeeinvoicedate,
fact_highweedsandgrassdetails.investigationopendatetime,
fact_highweedsandgrassdetails.investigationopendate,
fact_highweedsandgrassdetails.investigationopendateid,
Cast(Datediff([day],
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
( vendormoweddatetime IS NOT NULL
AND vendormoweddatetime <=
fact_highweedsandgrassdetails.casecloseddate ) THEN
fact_highweedsandgrassdetails.vendormoweddatetime
ELSE
CASE
WHEN (
fact_highweedsandgrassdetails.casecloseddate
IS NOT NULL
AND
fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime )
THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE
fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(9, 2)),
Cast(Datediff(ss,
fact_highweedsandgrassdetails.investigationopendatetime,
CASE
WHEN
COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate) IS
NOT NULL THEN COALESCE (vendormoweddatetime,
fact_highweedsandgrassdetails.casecloseddate)
ELSE
CASE
WHEN
( fact_highweedsandgrassdetails.casecloseddate IS NOT NULL
AND fact_highweedsandgrassdetails.casecloseddate <=
fact_highweedsandgrassdetails.recordimportdatetime ) THEN
fact_highweedsandgrassdetails.casecloseddate
ELSE fact_highweedsandgrassdetails.recordimportdatetime
END
END) AS NUMERIC(18, 2)) * 60,
fact_casedetails.assigneddepartment,
COALESCE (fact_casedetails.assignedstaff, '[null]')
+ '/'
+ COALESCE (fact_casedetails.assigneddepartment, '[null]'),
fact_highweedsandgrassdetails.casecloseddate,
fact_highweedsandgrassdetails.receiveddatetime,
fact_highweedsandgrassdetails.assignedtovendordate,
fact_highweedsandgrassdetails.vendorinvoiceamount,
fact_highweedsandgrassdetails.invoicedstatusdate,
fact_highweedsandgrassdetails.complaint_source,
fact_highweedsandgrassdetails.inspection_result,
fact_highweedsandgrassdetails.reason_for_complaint,
fact_highweedsandgrassdetails.contractcompliancevendor,
fact_highweedsandgrassdetails.vendor_action,
fact_highweedsandgrassdetails.date_of_complaint_id,
fact_highweedsandgrassdetails.date_of_inspection_id,
CONVERT(INT, Replace(
Replace(fact_highweedsandgrassdetails.casenumber, 'HWG', 0)
, '-', 0)),
fact_highweedsandgrassdetails.maccomments,
dbo.dim_highweedscensustracts.b1_census_tract) AS
[High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS]
ORDER BY [High_x0020_Weeds_x0020_and_x0020_Grass_x0020_FACTS].[compliancejoin]
ASC
SVI just counted the columns from the top:
1) compliancejoin, 2) mowingsector, 3) caseclosedflag, 4) casehasvendorinfo, 5) mowingstatus, 6) assignedtovendor.
I see now that your subject line talks about column 6, but you say column 5 in body of your original post.
I don't know anything about cubes, but apparently there is some mapping problem when you run it from SSAS. (I assume it is SSAS, a part of the product I'm entirely ignorant of.) I figured that if you had got tripped by the zero-based numbering, you
might be staring on the wrong column.
Erland Sommarskog, SQL Server MVP, [email protected]
Maybe you are looking for
-
Old customer - new plans?
Wondering if before I call someone else may know the answer to this. I just noticed in Portland OR that I can see a heap of new HD channels. I have been a FiOS TV Customer since December of last year - I have Premier, HD and HBO/Cinemax with DVR. Sh
-
What is the exact problem with this file?
Hi all, There is an old form , which was not in use from many days. Now when we tried to run the form, i got the error saying "FRM-40734:Internal Error:Pl/SQL error occured.", in the login form. When i tried to open the fmb file in Oracle Forms Build
-
The ipad safari on facebook will echo characters on the search feature. Please fix this STUPID error! At the least, investigate it and come to a suitable response. Stupid things like this are making me lose faith and interest in Apple products.
-
Google Marker clusters (BC Map App)
Hi guys Hoping you can help me with a little problem. We have been working with the BC Map App from Kiyuco (http://www.bcmapapp.com) for a couple of months now and it works great, but i am trying to add a new feature and it is causing me some problem
-
Dear All, I would thank you for any help in the following issue. I have split in a process which split the flow of the process to go to 3 users for approvals and each user can add attachments before it submit. The issue is that after the 3 users subm