Я создаю код, который должен сохранять данные, предоставленные пользователем, однако данные, которые я передаю в вершину, являются нулевыми, я не могу понять, почему.

Вот мой js:

handleSave(){
        console.log("Saving...")
        this.toggleSaveLabel = 'Saving...'
        this.updatedData['Id'] = this.recordData.Id
        console.log(this.updatedData)
        
        UW_SavedData({records : this.updatedData}).then(() => {
            console.log('then trigered')
            this.toggleSaveLabel = 'Saved';
            
            this.dispatchEvent(
                new ShowToastEvent({
                    title : 'Success',
                    message : `Records saved succesfully!`,
                    variant : 'success',
                }),
            )
            this.isEdited = false;
            this.error = undefined;
        })
        .catch(error => {
            this.error = error;
            this.record = undefined;
            //console.log("Error in Save call back:", this.error);
        })
        .finally(() => {
            setTimeout(() => {
                this.toggleSaveLabel = 'Save';
            }, 3000);
        }); 

    }

Вот, например, в моем console.log(this.updatedData) он выводит на мою консоль: {UW_occupency_rate__c: "45", Id: "00Q2600000DVMLeEAP"}

Моя вершина выглядит так:

@AuraEnabled
public static void UW_SavedData(Lead records){
    system.debug('test');
    system.debug(records);
    if(records != null){
        system.debug(records);
        string currentId = records.Id;
        Lead Prop = [SELECT Id, UW_occupency_rate__c, UW_otherRevenue__c, UW_roomCostOfSales__c, UW_OtherCostOfSales__c,
                            UW_OperatingCost__c, UW_LabourAndBenefitCost__c, UW_taxCost__c, UW_MaxRent__c
                            FROM Lead WHERE Id = :currentId];   
        //Prop.UW_occupency_rate__c = record.UW_occupency_rate__c;
        //Prop.UW_otherRevenue__c = record.UW_otherRevenue__c;
        //Prop.UW_roomCostOfSales__c = record.UW_roomCostOfSales__c;
        //Prop.UW_OtherCostOfSales__c = record.UW_OtherCostOfSales__c;
        //Prop.UW_OperatingCost__c = record.UW_OperatingCost__c;
        //Prop.UW_LabourAndBenefitCost__c = record.UW_LabourAndBenefitCost__c;
        //Prop.UW_taxCost__c = record.UW_taxCost__c;
        //Prop.UW_MaxRent__c = record.UW_MaxRent__c;
        //update Prop;
        
        }     
    }

И здесь моя система отладки печатает мой тест ==>, поэтому класс вершины запускается, но system.debug(records) возвращает Null

Что я делаю неправильно ? Я должен иметь возможность видеть свои данные .. спасибо

0
Derek F 15 Авг 2021 в 14:33

1 ответ

На основании этого blog вам нужно либо передать объект в апекс как объект, а не как объект, либо добавить {'sobjectType':'Contact'}.

0
Damecek 15 Авг 2021 в 22:05