Spaces:
Sleeping
Sleeping
Update app.py
Browse files
app.py
CHANGED
@@ -120,9 +120,12 @@ def upload_file_to_salesforce(file_path, filename, sf_connection, file_type):
|
|
120 |
)
|
121 |
content_document_id = content_document['records'][0]['ContentDocumentId']
|
122 |
|
123 |
-
|
|
|
|
|
|
|
124 |
except Exception as e:
|
125 |
-
return None, f"Error uploading {filename} to Salesforce: {str(e)}"
|
126 |
|
127 |
# Function to generate the daily progress report (DPR), save as PDF, and upload to Salesforce
|
128 |
def generate_dpr(files):
|
@@ -161,6 +164,7 @@ def generate_dpr(files):
|
|
161 |
# Salesforce upload
|
162 |
salesforce_result = ""
|
163 |
pdf_content_document_id = None
|
|
|
164 |
image_content_document_ids = []
|
165 |
|
166 |
if sf and pdf_filepath:
|
@@ -168,14 +172,13 @@ def generate_dpr(files):
|
|
168 |
# Create Daily_Progress_Reports__c record
|
169 |
report_description = "; ".join(captions)[:255] # Concatenate captions, limit to 255 chars
|
170 |
dpr_record = sf.Daily_Progress_Reports__c.create({
|
171 |
-
|
172 |
'Report_Description__c': report_description
|
173 |
})
|
174 |
dpr_record_id = dpr_record['id']
|
175 |
salesforce_result += f"Created Daily_Progress_Reports__c record with ID: {dpr_record_id}\n"
|
176 |
|
177 |
# Upload PDF to Salesforce
|
178 |
-
pdf_content_document_id, pdf_upload_result = upload_file_to_salesforce(
|
179 |
pdf_filepath, pdf_filename, sf, "pdf"
|
180 |
)
|
181 |
salesforce_result += pdf_upload_result + "\n"
|
@@ -188,6 +191,13 @@ def generate_dpr(files):
|
|
188 |
'ShareType': 'V'
|
189 |
})
|
190 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
191 |
# Upload images to Salesforce
|
192 |
for file in files:
|
193 |
image_filename = os.path.basename(file.name)
|
@@ -232,4 +242,3 @@ iface = gr.Interface(
|
|
232 |
|
233 |
if __name__ == "__main__":
|
234 |
iface.launch()
|
235 |
-
|
|
|
120 |
)
|
121 |
content_document_id = content_document['records'][0]['ContentDocumentId']
|
122 |
|
123 |
+
# Get the URL of the ContentDocument (PDF file)
|
124 |
+
content_document_url = f"https://{sf_connection.sf_instance}.salesforce.com/{content_document_id}"
|
125 |
+
|
126 |
+
return content_document_id, content_document_url, f"File {filename} uploaded successfully"
|
127 |
except Exception as e:
|
128 |
+
return None, None, f"Error uploading {filename} to Salesforce: {str(e)}"
|
129 |
|
130 |
# Function to generate the daily progress report (DPR), save as PDF, and upload to Salesforce
|
131 |
def generate_dpr(files):
|
|
|
164 |
# Salesforce upload
|
165 |
salesforce_result = ""
|
166 |
pdf_content_document_id = None
|
167 |
+
pdf_url = None
|
168 |
image_content_document_ids = []
|
169 |
|
170 |
if sf and pdf_filepath:
|
|
|
172 |
# Create Daily_Progress_Reports__c record
|
173 |
report_description = "; ".join(captions)[:255] # Concatenate captions, limit to 255 chars
|
174 |
dpr_record = sf.Daily_Progress_Reports__c.create({
|
|
|
175 |
'Report_Description__c': report_description
|
176 |
})
|
177 |
dpr_record_id = dpr_record['id']
|
178 |
salesforce_result += f"Created Daily_Progress_Reports__c record with ID: {dpr_record_id}\n"
|
179 |
|
180 |
# Upload PDF to Salesforce
|
181 |
+
pdf_content_document_id, pdf_url, pdf_upload_result = upload_file_to_salesforce(
|
182 |
pdf_filepath, pdf_filename, sf, "pdf"
|
183 |
)
|
184 |
salesforce_result += pdf_upload_result + "\n"
|
|
|
191 |
'ShareType': 'V'
|
192 |
})
|
193 |
|
194 |
+
# Update the DPR record with the PDF URL
|
195 |
+
if pdf_url:
|
196 |
+
sf.Daily_Progress_Reports__c.update(dpr_record_id, {
|
197 |
+
'PDF_URL__c': pdf_url
|
198 |
+
})
|
199 |
+
salesforce_result += f"Updated PDF URL for record ID {dpr_record_id}\n"
|
200 |
+
|
201 |
# Upload images to Salesforce
|
202 |
for file in files:
|
203 |
image_filename = os.path.basename(file.name)
|
|
|
242 |
|
243 |
if __name__ == "__main__":
|
244 |
iface.launch()
|
|