Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

Upper case issue

Former Member
0 Kudos

Hello experts,

In the delivery when I am creating handling unit where I am maintaining the contents which is a combination of production order and operation no. The issue is in my report program it is displaying the handling unit when I am maintaining the contents in upper case. for eg if I am maintaining as 904A1215 it is getting updating in the report program.

If it is 904a1215 it is not getting updated in the report.

INHALT field is case sensitive,Lower case.

In my program it is fetching the productionorder for the sales order from AFPO table(Which is in upper case) then getting operation no from AFVC table. Later concatenating this twoand saving in  the field INHALT. Later passing to VEKP table in the INHALT field in upper case so it is not fetching the correct Handling unit for the corresponding INHALT.

How can I overcome this case sensitive to fetch HU correctly?

Thanks.

Regards,

Priya

12 REPLIES 12

thangam_perumal
Contributor
0 Kudos

Hi Priya,

            If everything is in uppercase mean you can use upper case key word.

Eg.

        DATA text TYPE string.
text = `Careful with that Axe, Eugene`.
TRANSLATE text TO UPPER CASE.




Regards,

Thangam.P

0 Kudos

Hello,

You can use the translate  statement :

translate INHALT to UPPER-CASE.

Hope it helps.

PeterJonker
Active Contributor
0 Kudos

I do not understand what the problem is.  You are picking up data which is in uppercase and want it into lower case?

Translate to lower case could do that, but I think you mean something else.

0 Kudos

Hi Peter,

The issue here is case sensitive nature of INHALT field.

In the delivery I am creating handling unit where I should fill contents(INHALT field). If I am maitaining it in upper case it is getting updating the handling unit the report without any issues. If I am maintaining it in lower case it not geting update in the report.

For eg: 904A1212 - It will update the corresponding handling unit which I have created for the delivery
Same  904a1212 - It will not update the handling unit because of this case sensitivity.

In the report they fetching this field from VEKP-INHALT.

Is there any option to overcome this issue without any change in the domain level?

Thanku.

Regards,

Priya

0 Kudos

So it is stored in lower case but the repost shows it in upper case ?

In that case you need to define the field in the report that shows (or update ) this value as a text field with lower case.

I am sorry but I still do not get what really the problem is.

You are describing behavior of the database table field, but where is it going wrong ? What transaction are you performing ? Is it a report that shows handling unit info, is it an update program ?

Which field is showing the lower case values in UPPER CASE ? It is not the INHALT field so that is not where the problem is. But which field is it ?

Former Member
0 Kudos

Hi Priya,

This can be done using Native SQL. Please try with the below code and check if it works.

DATA:

ls_vekp      TYPE vekp  ,

lt_vekp       TYPE STANDARD TABLE OF vekp ,

lv_inhalt     TYPE inhalt.

***CONCATENATE <productionorder>   <operation no> INTO lv_inhalt.

TRANSLATE lv_inhalt TO UPPER CASE.

EXEC SQL PERFORMING fetch_vekp.

  SELECT * FROM vekp

           INTO :ls_vekp

           WHERE  mandt = :sy-mandt

           and upper(inhalt) = :lv_inhalt

ENDEXEC.

***Now LT_VEKP  will have the correct entries from VEKP

***Use READ TABLE lt_vekp (or) LOOP AT lt_vekp.  to get the data

*&---------------------------------------------------------------------*

*&      Form  fetch_vekp

*&---------------------------------------------------------------------*

FORM fetch_vekp.

  APPEND ls_vekp TO lt_vekp.

  CLEAR ls_vekp.

ENDFORM.                    "fetch_vekp

Jelena
Active Contributor
0 Kudos

Just like Peter I'm confused too - what the issue is exactly? The field INHALT has domain TEXT40 where 'Lower case' is checked, so it's case sensitive and any information you put into that field will be stored "as is".

If that information requires a case translation for some program then obviously it must be handled programmatically either when saving the value or retrieving it. The command to do that was given in the very first response (it's also in ABAP help, by the way). What clarification is still needed?

former_member195402
Active Contributor
0 Kudos

Hi Priya,

do I unterstand right:

Your report has a dialogue field where you can enter a value in lowercase. If you enter in uppercase, then all works fine.

If this is so, change the data element of your screen field from text40 to char40.

Regards,

Klaus

0 Kudos

Thank you so much for the quick replies.. I think I should provide some more clear clarification on the same..

It is an update program. Once the handling unit is created for the delivery it should update in the program and it allows to change the user status also.

There are some case where we needs to create handling unit, In such cases we should enter the contents(INHALT) field. Which is a combination of production order and operation no.

Here the issue is, Whenever I am giving an entry with lowercase for eg (904b1212/0310) Handling unit is not getting update in the program. But it will get update if I am giving B in upper case.

In the program there is no comparison b/w the entered field and with table values.

According to the program flow,

  • It will fech the item details from VBAP table by passing sales order and item no
  • Getting production order associated with sales order from AFPO
  • Getting operation no from AFVC table
  • Concatenating the production order and operation no(VORNR) and saving to the field AFVC.
  • Please note here all the entries are in upper case
  • Then extract handling unit from VEKP table with content INHALT field which stored above.
  • Since in our delivery we stored it in lower case the corresponding HU not fetching.

Is there any solution other than changing at the domain level because it is not advisabe.

Thank you.

Regards,

Priya


0 Kudos

Hi Priye,

VEKP-INHALT may contain LOWER CASE letters, but you can move it into a work field and translate it to UPPER CASE during runtime of your report as mentioned above by Thangam Perumal and Navneet Kumar. Thean access your data from the work field.

I can't see  any issue, and you don't have to modify any domain for that.

Regards,

Klaus

0 Kudos

Hi Klaus Babl,

Here they are fetching the prod order from AFPO table. And it is in upper case for the corresponding sales order,while it is in lower case in delivery. Here the issue raises, so when it is goin as upper case to VEKP table i/p it is fetching different handling unit for the corresponding prod order/operation no(INHALT) field.

Thanks,

Priya

0 Kudos

Hi,

if you have a LOWER CASE database field VEKP-INHALT and an UPPERCASE work field MY_INHALT (copied and translated from VEKP-INHALT), then you have both values to access in UPPER and LOWER CASE.

Then you should find a solution for your issue.

Regards,

Klaus