web
You’re offline. This is a read only version of the page.
close
Skip to main content

Announcements

News and Announcements icon
Community site session details

Community site session details

Session Id :
Power Platform Community / Forums / Power Apps / Does not match the exp...
Power Apps
Answered

Does not match the expected type ‘Currency’. Type found ‘Number’.

(0) ShareShare
ReportReport
Posted on by 577 Moderator
Hi,

On creation version 3.25123.14 while editing a custom page I got an error while patching a dataverse table regarding a currency type column :
 
The type of this argument ‘man_remisemontantmin’ does not match the expected type ‘Currency’. Type found ‘Number’.

Whenere I try to patch this column I got an error on the editor, but the currency type does not exists in PowerApps so I don't know what to do about this.
 
Regards,
I have the same question (0)
  • Suggested answer
    Kalathiya Profile Picture
    2,456 Super User 2026 Season 1 on at
    Hello @QuentinDURIEZ
     
    Please try this:
    Patch(
        YourTable, //Replace 'YourTable' table name with your table name
        Defaults(YourTable), //Replace 'YourTable' table name with your table name
        {
            man_remisemontantmin: Value(TextInput1.Text) /replace with your column name
        } //TextInput1 - replace with your input field name
    )
    
    ---------------------------------------------------------------------------------
     
    📩 Need more help? Mention @Kalathiya anytime!
    ✔️ Don’t forget to Accept as Solution if this guidance worked for you.
    💛 Your Like motivates me to keep helping!
  • Ram Prakash Duraisamy Profile Picture
    5,877 Super User 2026 Season 1 on at
     
    You are trying to patch number in currency field.
     
    Try below code to achieve the same
     
    
    Patch(TableName,
    LookUp('Table Name', ID=1), // if it is an existing Record
    Defaults('Table Name'), // if it is an new Record
        {
            "new_currencyfield": Value(350.25) // Logical Name of Currency field
        }
     
    Please mark as answer if my suggestion helps.
    Subscribe here for More Useful videos : https://www.youtube.com/@rampprakash3991
  • Verified answer
    QuentinDURIEZ Profile Picture
    577 Moderator on at
    Hello all,

    Thanks for your reponses but this not work

    Here is what I do : 
     
    Patch(Remises ; 
        ForAll(_collectionRemises ;
            Patch(
                LookUp(_collectionRemisesExistantes As r ; r.'Famille de SKU'.SKU = ThisRecord.'Famille de SKU'.SKU And r.'Montant min.' = NumberInput3.Value);
                {
                    'Offre commerciale': ThisRecord.'Offre commerciale';
                    'Famille de SKU': ThisRecord.'Famille de SKU';
                    'Montant min.': NumberInput3.Value
                }
            ) 
         )
    )

    I use a modern number input, but even if I force a constant value I got the same error message
     
    Patch(Remises ; 
        ForAll(_collectionRemises ;
            Patch(
                LookUp(_collectionRemisesExistantes As r ; r.'Famille de SKU'.SKU = ThisRecord.'Famille de SKU'.SKU And r.'Montant min.' = NumberInput3.Value);
                {
                    'Offre commerciale': ThisRecord.'Offre commerciale';
                    'Famille de SKU': ThisRecord.'Famille de SKU';
                    'Montant min.': 0
                }
            ) 
         )
    )
    The currency field waits for a currency value but this does not exists.

    Since I use a custom page I can't change the authoring version that coonvert my currency field as a number where I collect my remises and  cannot be reverted


    If I use a classic Patch in a ForAll loop, everything goes fine
     
    ForAll(_collectionRemises As r; 
        Patch(
            Remises ;
            Coalesce(LookUp(_collectionRemisesExistantes As e ; e.'Famille de SKU'.SKU = r.'Famille de SKU'.SKU And e.'Montant min.' = NumberInput3.Value); Defaults(Remises) );
                {
                    'Offre commerciale': r.'Offre commerciale';
                    'Famille de SKU': r.'Famille de SKU';
                    'Montant min.': NumberInput3.Value
                }
        )
    )
    

     
  • Kalathiya Profile Picture
    2,456 Super User 2026 Season 1 on at
     
    you need to wrap the value you are patching with the Value() function so that it is correctly interpreted when sent to Dataverse.
     
     
    Assuming ‘Offre commerciale’ is a currency column, you need to pass the dynamic field value like this:
    Value(ThisRecord.'Offre commerciale')
     
    Patch(Remises ; 
        ForAll(_collectionRemises ;
            Patch(
                LookUp(_collectionRemisesExistantes As r ; r.'Famille de SKU'.SKU = ThisRecord.'Famille de SKU'.SKU And r.'Montant min.' = NumberInput3.Value);
                {
                    'Offre commerciale': Value(ThisRecord.'Offre commerciale');
                    'Famille de SKU': ThisRecord.'Famille de SKU';
                    'Montant min.': 0
                }
            ) 
         )
    )
     
     
     
     
    If this response resolves your issue, please mark it as the Verified Answer so it can help other community members as well.

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

Season of Sharing Community Challenge Launch!

Jump in, show your community spirit, and win prizes!

Kudos to our 2025 Community Spotlight Honorees

Expanding mentorship, skilling, and AI innovation

Congratulations to the May Top 10 Community Leaders!

These are the community rock stars!

Leaderboard > Power Apps

#1
Valantis Profile Picture

Valantis 424

#2
WarrenBelz Profile Picture

WarrenBelz 355 Most Valuable Professional

#3
11manish Profile Picture

11manish 290

Last 30 days Overall leaderboard