Skip to main content

Notifications

Announcements

No record found.

Microsoft Dynamics AX (Archived)

How to repeat String with x++

Posted on by 910

Hi,

I'm looking for the equivalent of this function to repeat string: 

info(strRFix('Alex',10,'*')); //******Alex  => ok


i want somthing like : 

info(strRFix('Alex',15,'strRep')); // iget sssssssssssAlex but how to get : strRepStrReAlex

Any help ?

*This post is locked for comments

  • Suggested answer
    Denis Macchinetti Profile Picture
    Denis Macchinetti 16,444 on at
    RE: How to repeat String with x++

    Hi Alex

    Another options is to use the .NET Framework CLR type.

    msdn.microsoft.com/.../cc584291.aspx

    Below an example that for sure can improve and become an Global Function :

       System.String       string, replaceChar;

       str                         finalString, fixedString = 'Alex';

       int                         stringLenght = 10;

       // Your version

       info(strRFix('Alex',stringLenght,'*'));

       //////////////////

       replaceChar = "X";

       string = New System.String(replaceChar.get_Chars(0), stringLenght);

       string = string.Replace(replaceChar, "*");

       finalString = string.ToString();

       finalString = subStr(finalString, 1, stringLenght - strLen(fixedString) ) + fixedString;

       Info (finalString);

  • Verified answer
    Mea_ Profile Picture
    Mea_ 60,278 on at
    RE: How to repeat String with x++

    Hi Alex,

    There is no function out of the box to do what you asking, at least I'm not aware of. However, you can always write new one.

    Here is small example I built for you:

    str myMagicStrRep(str _source, str _strRep, int _number)
        {
            int sourceLength = strLen(_source);
            int strRepLength = strLen(_strRep);
            int repCount;
            
            if (_number < 1 || !strRepLength)
            {
                return '';
            }
            
            if (sourceLength > _number) 
            {
                return  subStr(_source, 1, _number);
            }
            
            repCount = (_number div strRepLength) + 1;
                    
            return subStr(strRep( _strRep, repCount), 1, _number - sourceLength) + _source;
        }
        
        info (myMagicStrRep('Alex','strRep', 15));


    It's not ideal and you definitely could improve it, but I think you will get an idea. 

Under review

Thank you for your reply! To ensure a great experience for everyone, your content is awaiting approval by our Community Managers. Please check back later.

Helpful resources

Quick Links

December Spotlight Star - Muhammad Affan

Congratulations to a top community star!

Top 10 leaders for November!

Congratulations to our November super stars!

Tips for Writing Effective Suggested Answers

Best practices for providing successful forum answers ✍️

Leaderboard

#1
André Arnaud de Calavon Profile Picture

André Arnaud de Cal... 291,280 Super User 2024 Season 2

#2
Martin Dráb Profile Picture

Martin Dráb 230,214 Most Valuable Professional

#3
nmaenpaa Profile Picture

nmaenpaa 101,156

Leaderboard

Featured topics

Product updates

Dynamics 365 release plans