finished pricebook2 & pricebookentry

This commit is contained in:
Rene Kaßeböhmer
2025-04-17 10:32:35 +02:00
parent 94d81669d8
commit 8485b38dba
13 changed files with 119 additions and 16 deletions

View File

@ -147,11 +147,13 @@ def extract_data(object_id, query, output_path='output', context='qa2'):
if __name__ == '__main__':
import argparse
# Parse command-line arguments
parser = argparse.ArgumentParser(description='Extract Salesforce data via Bulk API')
parser.add_argument('--context', type=str, required=True,
help='Context name (e.g., "qa2", "prod")')
parser.add_argument('--country', type=str, required=True,
help='CountryCode (e.g., "NL", "UK")')
parser.add_argument('--output_path', type=str, required=False,
help='./')
parser.add_argument('--sobjects', type=str, required=False,
@ -170,7 +172,7 @@ if __name__ == '__main__':
for query_def in queries:
sobject = query_def['sobject']
query_str = query_def['query']
query_str = query_def['query'].replace('{country}', args.country)
# Skip if --sobjects is provided and current sobject isn't in the list
if selected_sobjects and sobject not in selected_sobjects:

View File

@ -2,28 +2,34 @@
[
{
"sobject": "SCInstalledBaseLocation__c",
"query": "SELECT Id, City__c, Country__c, GeoY__c, GeoX__c, PostalCode__c, Street__c, Extension__c, HouseNo__c, FlatNo__c, Floor__c FROM SCInstalledBaseLocation__c WHERE Country__c = 'NL' AND Id = 'a1B1r0000099EsfEAE' limit 1"
"query": "SELECT Id, City__c, Country__c, GeoY__c, GeoX__c, PostalCode__c, Street__c, Extension__c, HouseNo__c, FlatNo__c, Floor__c FROM SCInstalledBaseLocation__c WHERE Country__c = '{country}' AND Id = 'a1B1r0000099EsfEAE' limit 1"
},{
"sobject": "SCInstalledBase__c",
"query": "SELECT Id, Name, CommissioningDate__c,InstallationDate__c,ProductEnergy__c, ProductUnitClass__c,ArticleNo__c,SerialNo__c, SerialNoException__c, ProductUnitType__c, InstalledBaseLocation__c FROM SCInstalledBase__c WHERE Country__c = 'NL' AND InstalledBaseLocation__c = 'a1B1r0000099EsfEAE'"
"query": "SELECT Id, Name, CommissioningDate__c,InstallationDate__c,ProductEnergy__c, ProductUnitClass__c,ArticleNo__c,SerialNo__c, SerialNoException__c, ProductUnitType__c, InstalledBaseLocation__c FROM SCInstalledBase__c WHERE Country__c = '{country}' AND InstalledBaseLocation__c = 'a1B1r0000099EsfEAE'"
},{
"sobject": "Asset",
"query": "SELECT Id, Serialnumber FROM Asset WHERE Location.ParentLocation.Name LIKE '%NL'"
"query": "SELECT Id, Serialnumber FROM Asset WHERE Location.ParentLocation.Name LIKE '%{country}'"
},{
"sobject": "Address",
"query": "SELECT Id, Country, CountryCode, Street, City, ParentId, PostalCode FROM Address WHERE CountryCode = 'NL'"
"query": "SELECT Id, Country, CountryCode, Street, City, ParentId, PostalCode FROM Address WHERE CountryCode = '{country}'"
},{
"sobject": "ParentLocation",
"query": "SELECT Id, Name FROM Location WHERE Name LIKE '%NL'"
"query": "SELECT Id, Name FROM Location WHERE Name LIKE '%{country}'"
},{
"sobject": "ChildLocation",
"query": "SELECT Id, ParentLocationId, Name FROM Location WHERE ParentLocation.Name LIKE '%NL'"
"query": "SELECT Id, ParentLocationId, Name FROM Location WHERE ParentLocation.Name LIKE '%{country}'"
},{
"sobject": "Product2",
"query": "SELECT Id, Main_Product_Group__c, Family, MaterialType__c, Name, Product_Code__c, ProductCode, EAN_Product_Code__c FROM Product2"
},{
"sobject": "SCInstalledBaseRole__c",
"query": "SELECT Id, InstalledBaseLocation__c, Role__c, ValidFrom__c, ValidTo__c, Account__c FROM SCInstalledBaseRole__c WHERE InstalledBaseLocation__r.Country__c = 'NL' AND InstalledBaseLocation__c = 'a1B1r0000099EsfEAE'"
"query": "SELECT Id, InstalledBaseLocation__c, Role__c, ValidFrom__c, ValidTo__c, Account__c FROM SCInstalledBaseRole__c WHERE InstalledBaseLocation__r.Country__c = '{country}' AND InstalledBaseLocation__c = 'a1B1r0000099EsfEAE'"
},{
"sobject": "SCPriceList__c",
"query": "SELECT Id, Name, Brand__r.Name, Country__c from SCPriceList__c WHERE Country__c = '{country}' AND PriceList__c != null"
},{
"sobject": "SCPriceListItem__c",
"query": "SELECT Id, Article__r.Name, Price__c, PriceUnit__c, Pricelist__c, ValidFrom__c, ValidTo__c, Article__r.EANCode__c, Pricelist__r.Brand__r.Name, Pricelist__r.Country__c FROM SCPriceListItem__c WHERE Country__c = '{country}' AND PriceList__c != null AND (ValidTo__c >= TODAY OR ValidFrom__c >= TODAY) AND Article__c = 'a0Gw000001R9slpEAB'"
}
]
}

View File

@ -0,0 +1,2 @@
"Id","Article__r.Name","Article__r.EANCode__c","Price__c","PriceUnit__c","Pricelist__c","ValidFrom__c","ValidTo__c","Pricelist__r.Brand__r.Name","Pricelist__r.Country__c"
"a0p6900000eZ3nbAAC","0010021907","4024074807507","2011.85","1.0","a0q20000000PO8OAAW","2021-01-01","2099-12-31","Vaillant","NL"
1 Id Article__r.Name Article__r.EANCode__c Price__c PriceUnit__c Pricelist__c ValidFrom__c ValidTo__c Pricelist__r.Brand__r.Name Pricelist__r.Country__c
2 a0p6900000eZ3nbAAC 0010021907 4024074807507 2011.85 1.0 a0q20000000PO8OAAW 2021-01-01 2099-12-31 Vaillant NL

View File

@ -0,0 +1,3 @@
"Id","Name","Brand__r.Name","Country__c"
"a0q20000000PO8OAAW","NL Vaillant","Vaillant","NL"
"a0q20000000PO8TAAW","NL AWB","AWB","NL"
1 Id Name Brand__r.Name Country__c
2 a0q20000000PO8OAAW NL Vaillant Vaillant NL
3 a0q20000000PO8TAAW NL AWB AWB NL