• Rui Lopes
  • NEWBIE
  • 0 Points
  • Member since 2018

  • Chatter
    Feed
  • 0
    Best Answers
  • 0
    Likes Received
  • 0
    Likes Given
  • 1
    Questions
  • 0
    Replies
I would like to attach a file to a expense record that i will create though a lightning component. I dont have recordId so I think I need to create the record for the attachment first. can you guys please help me out? this is my code:

Component
<aura:component controller="ExpensesController" implements="force:appHostable,flexipage:availableForAllPageTypes" access="global" >
    <aura:handler name="init" value="this" action="{!c.doInit}" />

    <aura:attribute name="expensefields" type="String[]" default="['Expense_type__c','Amount__c','BTW__c',
    'Opmerking__c', 'Approver_1__c','Approver_2__c']" />

    <lightning:notificationsLibrary aura:id="notifLib"/>

    <lightning:card iconName="standard:document" title="Add Attachment">
        <div class="slds-card__body slds-card__body_inner">
            <lightning:input name="file1" type="file" label="Attachment"
                             multiple="true" accept="image/png, .zip" onchange="{!c.handleFilesChange}"/>
        </div>
    </lightning:card>
    <lightning:card iconName="standard:account" title="Add Expense">
        <div class="slds-card__body slds-card__body_inner">
            <lightning:recordForm
                    objectApiName="Expense__c"
                    fields="{!v.expensefields}"
                    onsuccess="{!c.handleSuccess}"
            />
        </div>
    </lightning:card>
</aura:component>

Controller 
({
    doInit: function(component, event, helper){

    },

    handleSuccess: function (component, event, helper) {
        helper.handleSuccess(component,event);
    },

    handleFilesChange: function (component, event, helper) {
        helper.handleFilesChange(component,event)
    }
})

Helper
({
    handleSuccess : function(component, event) {
        component.find('notifLib').showToast({
            "variant": "success",
            "title": "Expense Created",
            "message": "Record ID: " + event.getParam("id")
        });
    },

    handleFilesChange: function (component, event) {
        var uploadedFiles = event.getParam("files");
        alert("Files uploaded : " + uploadedFiles.length);
    }
})

No Apex controller at this moment.