cancel
Showing results for 
Search instead for 
Did you mean: 

BBP_RFC_READ_TABLE and Unicode

Former Member
0 Kudos

When I download table content I get a "#" for special characters (for example Bulgarian language).

Is there a way to solve this issue?

Thanks

Ton

Accepted Solutions (1)

Accepted Solutions (1)

hynek_petrak
Active Participant
0 Kudos

Hi,

do you mean via .NET connector, ActiveX or which technology?

Through .NET Connector 3 it works just fine.

Hynek

Former Member
0 Kudos

Hi Hynek

Thanks for your reply

But I download through Connector 3.0 and get #-signs for cyrillic charaqcters.

What could I do?

Thanks

Ton

Former Member
0 Kudos

I logged on both in English and in Bulgarian (no language filter set on the table) and in both cases I get #-sign for cyrillic characters

KR

Ton

hynek_petrak
Active Participant
0 Kudos

Is your system Unicode enabled? Do you get the right result through SE37 simulation?

MarkusTolksdorf
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Ton,

RFC_READ_TABLE is not designed to work with Unicode systems. It's anyway the wrong approach: It's better to define a remote enabled function module that returns the needed information from the desired table. This is much cleaner and allows to do the appropriate authorization checks in the ABAP system.

Best regards,

Markus

Former Member
0 Kudos

Hi Marcus

Thanks for the reply.

The only thing is that I am not allowed to create a function module.

KR

Ton

MarkusTolksdorf
Product and Topic Expert
Product and Topic Expert
0 Kudos

Hi Ton,

Funny, it is much more dangerous to allow RFC_READ_TABLE access. Well, you should ask why this is not possible.

Best regards,

Markus

Former Member
0 Kudos

Hi Marcus

No that is not so funny.

I work as an lead/implementation consultant for a world wide company and I am allowed to see almost all data so reading is no issue.

But programming is another thing.

Next to that I cab read abap so far that I understand but I cannot develop in it.

KR

Ton

former_member197445
Contributor
0 Kudos

I agree with Markus.  You should find a way for the client to provide the .NET developers with a function module that returns the necessary data.  It's much safer than using RFC_READ_TABLE.  It's in your client's best interests.

Good luck with your efforts.

hynek_petrak
Active Participant
0 Kudos

Let's come back to the char conversion problem.

Ton: have you ever tried another RFC function? Other then RFC_READ_TABLE?

Do you get the right non-Latin characters e.g. through BAPI_CUSTOMER_GETDETAIL2?

Former Member
0 Kudos

Hi Hynek


I don't know that function


Do you have some documentation?


Thanks


Ton


former_member197445
Contributor
0 Kudos

Sample .NET code for calling this and other function modules can be found here:

How-To Use SAP Nco 3 Connector | .Net 4 | Visual Studio 2010

hynek_petrak
Active Participant
0 Kudos

Not that big deal....


RfcDestination dest = RfcDestinationManager.GetDestination("your_dest");

IRfcFunction rf = dest.Repository.CreateFunction("BAPI_CUSTOMER_GETDETAIL2");

rf.SetValue("CUSTOMERNO", "0000500002");

rf.Invoke(dest);

string n1 = rf.GetStructure("CUSTOMERADDRESS").GetString("NAME");

Former Member
0 Kudos

Hi Hynek

Thanks for the example but I need to download a lot of HR tables.

How do I set the table that I want to download?

Thanks

Ton

hynek_petrak
Active Participant
0 Kudos

Hi Ton

do you get local characters through the above call or you get #?

hynek_petrak
Active Participant
0 Kudos

Hi Ton,

why not to download the data you need via a query?

Other possibility is to use BAPIs like BAPI_PERSDATA_GETDETAILEDLIST ...

Hynek

Former Member
0 Kudos

Hi All,

I found the solution:

You have to set the code page like

Case "TH"                                     'Thai

                R3.connection.codepage = "8600"

Thanks for all your hints

Answers (0)