Skip to Main Content
IBM Sterling


This portal is to open public enhancement requests for IBM Sterling products and services. To view all of your ideas submitted to IBM, create and manage groups of Ideas, or create an idea explicitly set to be either visible by all (public) or visible only to you and IBM (private), use the IBM Unified Ideas Portal (https://ideas.ibm.com).


Shape the future of IBM!

We invite you to shape the future of IBM, including product roadmaps, by submitting ideas that matter to you the most. Here's how it works:

Search existing ideas

Start by searching and reviewing ideas and requests to enhance a product or service. Take a look at ideas others have posted, and add a comment, vote, or subscribe to updates on them if they matter to you. If you can't find what you are looking for,

Post your ideas
  1. Post an idea.

  2. Get feedback from the IBM team and other customers to refine your idea.

  3. Follow the idea through the IBM Ideas process.


Specific links you will want to bookmark for future use

Welcome to the IBM Ideas Portal (https://www.ibm.com/ideas) - Use this site to find out additional information and details about the IBM Ideas process and statuses.

IBM Unified Ideas Portal (https://ideas.ibm.com) - Use this site to view all of your ideas, create new ideas for any IBM product, or search for ideas across all of IBM.

ideasibm@us.ibm.com - Use this email to suggest enhancements to the Ideas process or request help from IBM for submitting your Ideas.

Status Under review
Categories Usability
Created by Guest
Created on Dec 11, 2023

CD Unix- CODEPAGE with "iconv -c" or substitution char

When CODEPAGE parameter is used for a transfer, iconv api is used internally by CD to codepage traduction in CDUnix-Linux and CDzOS (CDWindows doesn't use iconv, it's using Microsfot's API mlang.dll).

When in the content of the source file there is a char that exists in source codepage, but it doesn't exist in destination codepage, appears error MBCS002E.


We need that CD can call optionally to "iconv" api with "-c" option to avoid MBCS002E, accepting that we will have characters not translated correctly.

Another option is the use of a substitution char, f.i '?', for this situations, like another products are doing, f.i. like IBM MQ ManagedFileTransfer with option textReplacementCharacterSequence=<char>

What is your industry? Banking
How will this idea be used?

In cases where the content of file needs to be sent, even though one or several chars can't be translated with CODEPAGE pair

  • Guest
    Reply
    |
    Dec 20, 2023

    James.

    The first alternative doesn't work. The problem is that a char from source file doesn't exists in the destination codepage, so the conversion with UTF16 as intermediate codepage it has no sense.


    The second alternative has a lot of problems, at least in zOS side. How we can do external iconv in a zOS environment where we have MVS datasets and not unix files? How we can write a RUN TASK inside a zOS JCL whre iconv it's not a MVS program (it's a USS program)?

    Where it's documented recdl parámeter ??????????????????

  • Admin
    James Joseph
    Reply
    |
    Dec 20, 2023

    The indicated approach essentially allow files to become corrupted during translation, albeit you are ready to accept the same but eventually “will have characters not translated correctly.”

    Hence We would like to suggest a couple of possible alternatives using existing functionality for customer to consider:

    • Use codepage conversion on both sides of the copy step, converting to a common intermediate page, such as UTF-16, on the source side, and then converting from the intermediate page to the desired page on the destination side.

    • Use a run task to invoke iconv utility on the source side with the desired option(s), then copy the resulting translated file to the destination. Below example translates a text file from ISO-8859-1 to IBM037 and copies it to CDZ using this method. Note: recdl sysopt is used to specify the translated record delimiter, IBM037 LF character, in this case:

    step01 run task pnode

    sysopts="iconv -c -f ISO-8859-1 -t IBM037 /home/nis01/monty/mytemp/testFile > /home/nis01/monty/mytemp/testFile.xlated"

    step02 copy

    from

    (

    file = /home/nis01/monty/mytemp/testFile.xlated

    sysopts=":datatype=text:xlate=no:recdl=x25:"

    pnode

    )

    to

    (

    file = MFINC1.DEL.ME

    snode

    disp = rpl

    )

  • Admin
    James Joseph
    Reply
    |
    Dec 14, 2023

    Thank you for taking the time to share your ideas to IBM. We truly value our relationship with you and appreciate your efforts and willingness to share details about your experience, your recommendations, and ideas. We will soon review the same in the coming weeks and shall get back with a response.

    Thanks,

    Product Management