0

I am in the process of converting an existing Managed Package to Salesforce DX and

  1. Retrieved the Metadata from the packaging org
  2. Converted it to Source format
  3. Created a scratch org and
  4. pushed source to scratch org

The last step fails with hundreds of errors which all come from it not finding a Custom Field on a packaged Custom Object.

No such column 'customField__c' on entity 'NAMESPACE__CustomObject__c'.

The Metadata is there and I checked ALL the errors and nothing else is there.

I am also successful to do a mdapi:deploy to the same scratch org. It works without andy problems. But the problem persists. When I pull from the org and push it into another scratch I again see the same error.

7
  • 1
    Weird. You have "namespace": "NAMESPACE" in your project-scratch-def.json? – Keith C Sep 18 '19 at 9:55
  • Yes I do and linked it from my DevHUb. – Robert Sösemann Sep 18 '19 at 10:03
  • 1
    So a bug (e.g. missing feature) in source:push? Think you are stuck with e.g. stripping out everything but the data model and then adding pieces back in until you find the problem area which you might or might not be able to workaround. There is also a small chance that there is useful information in the .sfdx/sfdx.log file. – Keith C Sep 18 '19 at 10:09
  • 1
    Silly question, but have you looked through every single error in the output from sfdx? If I do something sfdx doesn't like in field X__c (which has many references), I get one error about X__c and then lots of errors about X__c not existing in references. Could there be a significant error hiding in all the rest of them? – Aidan Sep 18 '19 at 10:37
  • 1
    I'd forgotten those circular references. Horrible. Hacking to figure out the problem area would probably be needed for a Salesforce case to go anywhere in any case. Fingers crossed someone posts better ideas here instead though. – Keith C Sep 18 '19 at 10:45
1

I had a field named namedCredential__c in my Custom Object metadata. This made the deployment fail with

No such column 'namedCredential__c' on entity 'NS__CustomObject__c'. If you are attempting to use a custom field, be sure to append the '__c' after the custom field name. Please reference your WSDL or the describe call for the appropriate names. (63:34)

In my .forceignore I had

package.xml
**appMenu
**appSwitcher
**profiles
**settings
**emailservices
**namedCredential
**connectedApp
*crt

and I guess **namedCredential just ignored my field why syncing.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.