@@ -928,6 +928,7 @@ $C('$data.storageProviders.oData.oDataProvider', $data.StorageProviderBase, null
928928
929929 length : [ {
930930 allowedType : 'string' ,
931+ projection : function ( v ) { return v ? v . length : 0 ; } ,
931932 dataType : "number" , allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . ProjectionExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
932933 parameters : [ { name : "@expression" , dataType : "string" } ]
933934 } ,
@@ -948,6 +949,7 @@ $C('$data.storageProviders.oData.oDataProvider', $data.StorageProviderBase, null
948949
949950 strLength : {
950951 mapTo : "length" ,
952+ projection : function ( v ) { return v ? v . length : 0 ; } ,
951953 dataType : "number" , allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . ProjectionExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
952954 parameters : [ { name : "@expression" , dataType : "string" } ]
953955 } ,
@@ -998,27 +1000,45 @@ $C('$data.storageProviders.oData.oDataProvider', $data.StorageProviderBase, null
9981000 /* data functions */
9991001
10001002 day : {
1001- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1003+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1004+ dataType : "number" ,
1005+ projection : function ( v ) { return new Date ( v ) . getUTCDate ( ) ; } ,
10021006 parameters : [ { name : "@expression" , dataType : "date" } ]
10031007 } ,
10041008 hour : {
1005- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1009+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1010+ dataType : "number" ,
1011+ projection : function ( v ) { return new Date ( v ) . getUTCHours ( ) ; } ,
10061012 parameters : [ { name : "@expression" , dataType : "date" } ]
10071013 } ,
10081014 minute : {
1009- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1015+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1016+ dataType : "number" ,
1017+ projection : function ( v ) { return new Date ( v ) . getUTCMinutes ( ) ; } ,
10101018 parameters : [ { name : "@expression" , dataType : "date" } ]
10111019 } ,
10121020 month : {
1013- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1021+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1022+ dataType : "number" ,
1023+ projection : function ( v ) { return new Date ( v ) . getUTCMonth ( ) + 1 ; } ,
10141024 parameters : [ { name : "@expression" , dataType : "date" } ]
10151025 } ,
10161026 second : {
1017- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1027+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1028+ dataType : "number" ,
1029+ projection : function ( v ) { return new Date ( v ) . getUTCSeconds ( ) ; } ,
10181030 parameters : [ { name : "@expression" , dataType : "date" } ]
10191031 } ,
10201032 year : {
1021- allowedIn : [ $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1033+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1034+ dataType : "number" ,
1035+ projection : function ( v ) { return new Date ( v ) . getFullYear ( ) ; } ,
1036+ parameters : [ { name : "@expression" , dataType : "date" } ]
1037+ } ,
1038+ fractionalseconds : {
1039+ allowedIn : [ $data . Expressions . ProjectionExpression , $data . Expressions . FilterExpression , $data . Expressions . OrderExpression , $data . Expressions . SomeExpression , $data . Expressions . EveryExpression ] ,
1040+ dataType : "number" ,
1041+ projection : function ( v ) { return new Date ( v ) . getUTCMilliseconds ( ) / 1000 ; } ,
10221042 parameters : [ { name : "@expression" , dataType : "date" } ]
10231043 } ,
10241044
0 commit comments