How do I locate variable length data types with lengths of 2 or less???
How do I locate VARCHAR datatype where the lengths are 2 or less? I want to search the table list on a particular instance.
Correction to the query above:
select * from INFORMATION_SCHEMA.COLUMNS c
where DATA_TYPE = 'varchar'
and c.CHARACTER_MAXIMUM_LENGTH between 1 and 2
We need to exclude rows where it's -1 for varchar(max) columns.
For every expert, there is an equal and opposite expert. - Becker's Law
My blog
My TechNet articles
Similar Messages
-
Jdev11g: How to use a Ord.image data type with ADF Faces 11g
Where to find an example about Ord.image data type with ADF Faces 11g preview3
Hi,
such a sample doesn't yet exist.
Frank
Btw.: The Jdeveloper 11 forum is JDeveloper and OC4J 11g Technology Preview -
How to use same Data Type and Length for two fields
How to use same data type and length for two fields when using 'FOR ALL ENTRIES IN' in a select statement? For instance the select queries are :
SELECT bukrs gjahr belnr lifnr budat bldat zlspr dmbtr waers shkzg
FROM bsik
INTO TABLE it_bsik
WHERE bukrs = p_bukrs
AND lifnr IN s_lifnr.
IF it_bsik IS NOT INITIAL.
SELECT belnr gjahr awkey awtyp
FROM bkpf
INTO TABLE it_bkpf
FOR ALL ENTRIES IN it_bsik
WHERE belnr = it_bsik-belnr
AND gjahr = it_bsik-gjahr.
IF it_bkpf IS NOT INITIAL.
SELECT belnr gjahr lifnr xblnr
FROM rbkp
INTO TABLE it_rbkp
FOR ALL ENTRIES IN it_bkpf
WHERE belnr = it_bkpf-awkey+0(10)
AND gjahr = it_bkpf-awkey+10(4).
ENDIF.
ENDIF.
Here it gives an error in the 3rd select query that 'When you use the addition "FOR ALL ENTRIES IN itab", the fields "GJAHR" and "IT_BKPF2-AWKEY+10(4)" must have the same type and the same length.'
Kindly clarify.Hi Saurabh,
Please see the example code that I have developed for you. It will help you solve the problem.
REPORT ZTEST_3 .
tables : BKPF.
data : begin of it_bkpf occurs 1,
belnr type RE_BELNR,
awkey type awkey,
awtyp type awtyp,
gjahr type GJAHR,
end of it_bkpf.
data : begin of it_bkpf1 occurs 1,
belnr type RE_BELNR,
awkey type gjahr, " change the data type
awtyp type awtyp,
gjahr type GJAHR,
end of it_bkpf1.
data : begin of it_rbkp occurs 1,
belnr type BELNR_D,
gjahr type gjahr,
lifnr type LIFRE,
xblnr type XBLNR,
end of it_rbkp.
select belnr
awkey
awtyp
gjahr
from bkpf
into table it_bkpf
where BUKRS = 'TELH'.
loop at it_bkpf.
it_bkpf1-belnr = it_bkpf-belnr.
it_bkpf1-awkey = it_bkpf-awkey+10(4). "Here only append the required length.
it_bkpf1-awtyp = it_bkpf-awtyp.
it_bkpf1-gjahr = it_bkpf-gjahr.
append it_bkpf1.
clear it_bkpf1.
endloop.
select belnr
gjahr
lifnr
xblnr
from RBKP
into table it_rbkp
for all entries in it_bkpf1
where belnr = it_bkpf1-belnr
This is just an example. Change the fields according to your requirement.
Regards
Abhii
Edited by: Abhii on Mar 9, 2011 9:08 AM -
New Effective CAL essay: How do I create an abstract data type in CAL?
<p><strong>How do I create an abstract data type in CAL?</strong></p> <p> </p> <p>An <em>abstract data type</em> is one whose internal representation can be changed without needing to modify the source code of client modules that make use of that type. For software maintainability, it is a good idea to make a type that is subject to change or enhancement into an abstract data type. Another reason to create an abstract data type is to enforce invariants for values of the type that can only be ensured by using <em>constructor functions</em> (i.e. functions that return values of that type).</p> <p> </p> <p>In principle it is simple to create an abstract data type in CAL. For an algebraic data type, make the type constructor public and all data constructors private. For a foreign data type, make the type constructor public and the implementation scope private. If a scope qualifier is omitted, the scope is taken to be private.</p> <p> </p> <p>For example, the Map algebraic data type has the public type constructor Map and the data constructors Tip and Bin are each private, so it is an abstract data type.</p> <p> </p> <p>/** A map from keys (of type {@code k@}) to values</p> <p> (of type {@code a@}). */</p> <p><strong>data</strong> <strong>public</strong> Map k a <strong>=</strong></p> <p> <strong>private</strong> Tip <strong>|</strong></p> <p> <strong>private</strong> Bin</p> <p> size <strong>::</strong> <strong>!</strong>Int</p> <p> key <strong>::</strong> <strong>!</strong>k</p> <p> value <strong>::</strong> a</p> <p> leftMap <strong>::</strong> <strong>!(</strong>Map k a<strong>)</strong></p> <p> rightMap <strong>::</strong> <strong>!(</strong>Map k a<strong>);</strong></p> <p><strong> </strong></p> <p><strong> </strong></p> <p>There are a number of invariants of this type: the size field represents the number of elements in the map represented by its Bin value. The keys in leftMap are all less than key, which in turn is less than all the keys in rightMap. In particular, non-empty Map values can only be created if the key parameter type is a member of the Ord type class.</p> <p> </p> <p>Values of the Map type can be created outside the Cal.Collections.Map module only by using constructor functions such as insert:</p> <p> </p> <p>insert <strong>::</strong> Ord k <strong>=></strong> k <strong>-></strong> a <strong>-></strong> Map k a <strong>-></strong> Map k a<strong>;</strong></p> <p><strong>public</strong> insert <strong>!</strong>key value <strong>!</strong>map <strong>= ...</strong></p> <p> </p> <p>The owner of the Cal.Collections.Map module must ensure that all invariants of the Map type are satisfied, but if this is done, then it will automatically hold for clients using this function.</p> <p> </p> <p>Some examples of foreign abstract data types are Color, StringNoCase and RelativeDate:</p> <p> </p> <p><strong>data</strong> <strong>foreign</strong> <strong>unsafe</strong> <strong>import</strong> <strong>jvm</strong> <strong>private</strong> "java.awt.Color"</p> <p> <strong>public</strong> Color<strong>;</strong></p> <p><strong> </strong></p> <p><strong>data</strong> <strong>foreign</strong> <strong>unsafe</strong> <strong>import</strong> <strong>jvm</strong> <strong>private</strong> "java.lang.String"</p> <p> <strong>public</strong> StringNoCase<strong>;</strong></p> <p><strong> </strong></p> <p><strong>data</strong> <strong>foreign</strong> <strong>unsafe</strong> <strong>import</strong> <strong>jvm</strong> <strong>private</strong> "int"</p> <p> <strong>public</strong> RelativeDate<strong>;</strong></p> <p> </p> <p>The private implementation scope for Color means that a foreign function whose type involves Color can only be declared in the Cal.Graphics.Color module where the Color type is defined. A foreign function declaration involving the Color type relies on the compiler knowing that the Color type corresponds to java.awt.Color to resolve the corresponding Java entity i.e. it must know about the implementation of the Color type. Having a private implementation scope means that the Color type can be changed to correspond to a different Java class, or indeed to be an algebraic type, without the risk of breaking client code.</p> <p> </p> <p>In all these three cases there are useful, and different, design reasons to adopt a private implementation scope:</p> <p> </p> <p>For RelativeDate, the Java implementation type int represents a coded Gregorian date value in the date scheme used by Crystal Reports. Not all int values correspond to valid dates, and the algorithm to map an int to a year/month/day equivalent is fairly complicated, taking into account things like Gregorian calendar reform. Thus, it is desirable to hide the implementation of this type.</p> <p> </p> <p>For StringNoCase, the implementation is more straightforward as a java.lang.String. The reason to adopt a private implementation scope is to ensure that all functions involving StringNoCase preserve the semantics of StringNoCase as representing a case-insensitive string value. Otherwise it is very easy for clients to declare a function such as:</p> <p> </p> <p><strong>foreign</strong> <strong>unsafe</strong> <strong>import</strong> <strong>jvm</strong> "method replace"</p> <p> replaceChar <strong>::</strong> StringNoCase <strong>-></strong> Char <strong>-></strong> Char <strong>-></strong> StringNoCase<strong>;</strong></p> <p> </p> <p>which does not handle case-insensitivity correctly, but is a perfectly valid declaration. This declaration results in a compilation error when it is placed outside the module in which StringNoCase is defined because of the private implementation scope of StringNoCase.</p> <p> </p> <p>For Color, the issue is somewhat more subtle. The java.awt.Color implementation type is semantically the same as the CAL Color type. The problem is that java.awt.Color is mutable (since it can be sub-classed to create a mutable type). It is preferable for a first-class CAL type to not be mutable, so we simply make the implementation scope private to ensure that this will be the case. </p> <p> </p> <p>A somewhat less encapsulated kind of abstract data type can be created using <em>friend modules </em>and <em>protected</em> scope. For example, if an algebraic type is public, and all its data constructors are protected, then the data constructors can be accessed in the friend modules of the module in which the type is defined. Effectively this means that the implementation of the semantics of the type stretches over the module in which the type is defined, and all of its friend modules. These must all be checked if the implementation of the type is modified. </p> <p> </p> <p>Given the merits of abstract data types discussed above, it is perhaps surprising that most of the core types defined in the Prelude module are not abstract data types. For example: Boolean, Char, Int, Double, String, List, Maybe, Either, Ordering, JObject, JList, and all record and tuple types are non-abstract types. </p> <p> </p> <p>There are different reasons for this, depending on the particular type involved. </p> <p> </p> <p>For example, Boolean, List, Maybe, Either and Ordering are all rather canonical algebraic data types with a long history in functional languages, with many standard functions using them. They are thus guaranteed never to change. In addition, their values have no particular design invariants that need to be enforced via constructor functions. Exposing the data constructors gives clients some additional syntactic flexibility in using values of the type. For example, they can pattern match on the values using case expressions or let patterns.</p> <p> </p> <p>Essentially the same explanation holds for record and tuple types. Although non-tuple record types are less canonical, they do correspond to the fundamental notion of an anonymous named-field product type. The "anonymous" here simply means that the programmer can create an entirely new record type simply by creating a value; the type does not have to be declared anywhere prior to use.</p> <p> </p> <p>Char, Int, Double, String, JObject and JList are foreign types where in fact part of the semantics of the type is that we want clients to know that the type is a foreign type. For example, we want clients to know that Prelude.Int is essentially the Java primitive unboxed int type, and has all the semantics you would expect of the Java int type i.e. this is quite different from RelativeDate which is using int as its implementation type in a very tactical way that we may choose to change. One can think of a public foreign type declaration with public implementation scope as simply introducing the Java type into the CAL namespace.</p> <p> </p> <p>One interesting point here is with CAL's naming convention for public foreign types. We prefix a type name by "J" (for "Java") for foreign types with public implementation type such that the underlying Java type is mutable. This is intended as mnemonic that the type is not a pure functional type and thus some caution needs to be taken when using it. For example, Prelude.JObject has public Java implementation type java.lang.Object.</p> <p> </p> <p>In the case where the underlying Java type is not mutable, we do not use the prefix, since even though the type is foreign; it is basically a first class functional type and can be freely used without concern. For example, Prelude.String has public Java implementation type java.lang.String.</p> <p> </p> <p>In the case where the implementation type is private, then the fact that the type is a foreign type, whether mutable or not, is an implementation detail and we do not hint at that detail via the name. Thus Color.Color has as its private Java implementation type the mutable Java type java.awt.Color. </p> <p> </p> <p>When creating abstract data types it is important to not inadvertently supply public API functions that conflict with the desired public semantics of the type. For example, if the type is publicly a pure-functional (i.e. immutable) type such as Color, it is important not to expose functions that mutate the internal Java representation.</p> <p> </p> <p>A more subtle case of inadvertently exposing the implementation of a type can occur with derived instances. For example, deriving the Prelude.Outputable and Prelude.Inputable type classes on a foreign type, whose implementation type is a mutable Java reference type, allows the client to gain access to the underlying Java value and mutate it
(by calling Prelude.output, mutating, and then calling Prelude.input). The solution in this case is to not derive Inputable and Outputable instances, but rather to define a custom Inputable and Outputable instance that copies the underlying values.</p>Hi Pandra801,
When you create a the external content type, please try to add a filter based on your select statement.
http://arsalkhatri.wordpress.com/2012/01/07/external-list-with-bcs-search-filters-finders/
Or, try to create a stored procedure based on your select statement, then create ECT using the SQL stored procedure.
A step by step guide in designing BCS entities by using a SQL stored procedure
http://blogs.msdn.com/b/sharepointdev/archive/2011/02/10/173-a-step-by-step-guide-in-designing-bcs-entities-by-using-a-sql-stored-procedure.aspx
I hope this helps.
Thanks,
Wendy
Wendy Li
TechNet Community Support -
How to generate a set of date type records
How to generate a set of date-type records, with a fixed interval, starting from a date like 2008-01-01.
Some thing like this
SQL> select to_char(to_date('2008-01-01','yyyy-mm-dd') + (level - 1),'DD-MON-YYYY') my_date
2 from dual
3 connect by level <= 10
4 /
MY_DATE
01-JAN-2008
02-JAN-2008
03-JAN-2008
04-JAN-2008
05-JAN-2008
06-JAN-2008
07-JAN-2008
08-JAN-2008
09-JAN-2008
10-JAN-2008
10 rows selected. -
How to use clob or blob data type in OWB
how to use clob or blob data type in OWB?
if OWB not surport these data type,how can i extract the large data type from data sourceThe same question was asked just two days ago No Data Found: ORA-22992
Nikolai Rochnik -
How to replace content in text data type?
How to replace content in text data type?
when we sending the mails we are taking content from the database.
The data is maintained in text data type column. Now i have to replace some of content in mail content
(text data type column) from database.
I tried by using REPLACE function but data is truncatedThe data is maintained in text data type column.
Hello,
See REPLACE (Transact-SQL) => "If
string_expression is not of type varchar(max) or
nvarchar(max), REPLACE
truncates the return value at 8,000 Bytes"
You may should consider to Change the data type from "Text" (deprecated) to NVarChar(max).
Otherwise you have to use
UPDATETEXT (Transact-SQL) for the text data type.
Olaf Helper
[ Blog] [ Xing] [ MVP] -
How to set default value to date type attribute.
Hi,
How to set default value to date type attribute.
E.g I want to set u201C01/01/1999u201D to date attributes.
First i want to set value and then i want to fetch the same & want to check equals.
please suggest solution.
Regards,
SmitaHi,
In wdinit() method u can set the date
DateFormat df = new SimpleDateFormat("MM/dd/yyyy");
Date today = Calendar.getInstance().getTime();
String reportDate = df.format(today);
wdContext.currentContextElement().setFromDate(reportDate);
Another way you have set the this formate like that
1. Create a Simple type under "Dictionaries->SimpleType" called DateFormat
2. Select the type as "date"
3. Go to the "Representation" tab and set the format as "dd/MM/yyyy" (or whatever u want, but month should be MM)
4.Bind the context attribute to the type created now.
Hope this helps u.
Best Regards
Vijay K -
How to store and retrieve blob data type in/from oracle database using JSP
how to store and retrieve blob data type in/from oracle database using JSP and not using servlet
thanksJSP? Why?
start here: [http://java.sun.com/developer/onlineTraining/JSPIntro/contents.html] -
Which Data Type with 255 cars +
Hi,
I have a flat structure table with 15-20 fields, and I need for one of the field a data type with more than 255 cars
I cant put a STRING without having the flat structure error ...
Which one should I use ? How should I proceed ?
Thanks !
Kr,
BAHi Benjamin,
use SE80, click repository info system, click dictionary - data elemets. Chose length > 1024. F8 to execute.
Check where-used-list of what you like to use to make sure it is so frequently used that SAP will not change it.
Or better create your own Z data element with required length
Regards
Clemens -
Problem with central build of Simple Date Type with Enumeration
Dear gurus,
I hope I'm posting this in the correct forum. Please advise if I'm in the wrong forum.
I have a Web Dynpro DC in which I've created a simple data type with enumeration. It is used for binding to a radio box. The data type is called DownloadType; the enumeration contains two vales: current and archive. To allow me to access the enumeration values, I turn on the "Generate a class representation of the enumeration" in the data type builder.
I then reference the enumeration values with code like:
if (downloadType.equals (DownloadType._CURRENT))
yada yada yada
This works fine when building locally and deploying directly. But when the DC is built by CBS (or doing a "Development Component->Build..." in NW Dev Studio), the build fails, stating that the DownloadType._CURRENT symbol cannot be resolved.
For example:
C:yadayadayada.java:227: cannot resolve symbol
symbol : variable _CURRENT
location: class yadayadayada.DownloadType
equals(DownloadType._CURRENT)) {
Apparently the central builder is not smart enough to handle the "Generate a class representation" flag.
Is this a known problem? Are there any workarounds?
Thanks in advance for any help you can provide.
-Kelly
P.S. Environment: 2004sHi Kelly,
works for me using SP10, what SP are you on?
There's a line in the DC log that says:
[ddgen] [Info] Generating datatypes/com/x/x/x/MyEnum.java
and the java compiler includes the matching path for compilation:
[echo] source paths:
[echo] ...\_comp\src\packages
[echo] ..\t\ABF37B5AFB3B2E8A76FFD29E7862EA48\gen_ddic\datatypes
Regards,
Marc -
Howto call custom Oracel Data Type with TopLink?
Hello,
in our DB we have a custom Oracle type and a PL/SQL method which uses it.
I would like to call the Oracle data type with TopLink. How can I do this?
I could not find any documentation on this.
I know JPublisher can do this but I don't want to use it!
Please see code below
cheers,
Pete
**************Datatype********************************
CREATE TYPE My_Sub_Object AS OBJECT (Sub_Object_ID Number,
Sub_Object_Txt VARCHAR2(200));
CREATE TYPE My_Sub_Objects AS VARRAY (20) OF My_Sub_Object;
CREATE TYPE My_object AS OBJECT (Object_id Number,
Object_txt VARCHAR2(200),
Sub_Objects My_Sub_Objects);
************PL/SQL-Method*****************************
CREATE OR REPLACE PROCEDURE My_object_pro
(Item_Object out My_Object) is
Item_Sub_Object My_Sub_Object;
Item_Sub_Objects My_Sub_Objects;
Begin
Item_Sub_Object := My_Sub_Object(10, 'Sub Object 10');
Item_Sub_Objects := My_Sub_Objects(Item_Sub_Object);
Item_Sub_Objects.Extend;
Item_Sub_Object := My_Sub_Object(11, 'Sub Object 11');
Item_Sub_Objects(2) := Item_Sub_Object;
Item_Object := My_Object(1, 'Object', Item_Sub_Objects);
End;
/Object types and Varrays can be used from TopLink stored procedure calls. There was some support for this in 10.1.3, but the support in 11g (preview) is much better. You can also access the JDBC connection from TopLink or your DataSource and use JDBC directly.
In TopLink 11g you can use an ObjectRelationalDescriptor to map the Object type to a Java class, and use this class as the argument type in your StoredProcedureCall.
PL/SQL types are more difficult as they are not supported by JDBC, but your example only includes object types. If you had PL/SQL types you would need to wrap the types in object types, or use a PL/SQL block to convert them. TopLink 11g (preview 3) should have support for these as well. -
How do I locate the folders I created with my downloaded music?
How do I locate the folders I created with my downloaded music?
Thanks for any information,
DawnI have no problem pulling up a complete list of downloaded music. My problem exists with past downloads I put into a "Folder" then copied that folder to a CD. A bit frustrating.
Thanks for your input,
Dawn -
Help! How do I open a winmail.dat attachment with my Mac OS 10.6.8 & Mail 4.6 (1085) Thank you.
Winmail. dat file is attachments sent by Microsoft mail applications (Outlook, Outlook Express or Exchange) on a proprietary format called TNEF. Being a non-standard attachment format, users from other e-mail clients (like Thunderbird or Lotus Notes) or platforms (like Android, Apple, iPad or iPhone) cannot natively read them. But you can open it easily with a winmail viewer. Go to download one and good luck!
-
How can I locate my lost iPhone 5 with find my iPhone app ? Plus someone tried accessing my apple I'd on FaceTime on an unknown number related to iPhone 5 is this who's got my phone and can I track a number ?
If you activated the Find My iPhone service (in Settings>icloud), and if the device's batteries still have a charge, the device is not turned off and has not been reset and is connected to wifi, then you can try to track it. Using a computer's browser, log into icloud.com and look at the Find My iPhone page. On a device, invoke the Find My iPhone app (get it for free at the itunes app store) and log into the icloud account. Note: The Find My iPhone **app** does not turn on the service, you can only do that through Settings>icloud.
If the device is listed as "offline", then one of the requirements listed above is not met (like being connected to wifi, or if the device was stolen and the thief reset it).
Maybe you are looking for
-
How do you get Mountain Lion (OS 10.8) back from a time-capsule back-up
I have a Macbook Pro Late 2008 model which was running Mountain Lion (Mac OS 10.6) and for Christmas I received a new hard drive. I backed everything up on my time capsule and installed the new hard drive and now I can't get my original operating sys
-
Z61p ATI Mobility FireGL BSOD on Windows 7 64 bit
Am having many BSOD and 'windows reported and error' ... Have tried Lenovo 64 driver 8.361 per system update, tried 8.561 per Vista 64 / Win 7 on Lenovo Support and now trying ATI Beta 10.1 CCC pack. All crash and burn Recreating: ... Either try any
-
I want a report which gives leave approver for an employee
HI All, Please help in this issue I want a report which gives leave approver for an employee. Thanks, Guddia
-
Is it dangerous to run MacBook Pro with lid shut ?
Hey Gang, I run my MBP17 through a Cinema Display when I'm home. I've always kept the lid open a smidge for cooling. Also, I turn off the 17's display to give it a break while I enjoy the Cinema's larger real estate. Question: "Is it dangerous to
-
How to get iPhone identifier on Windows?
Like topic says. It's easy to do in Xcode but how can you retreive the device identifier in XP or Vista? Thanks!