|
|
@@ -6,7 +6,7 @@ import json |
|
|
|
import os |
|
|
|
import re |
|
|
|
import timeit |
|
|
|
from datetime import date, datetime |
|
|
|
from datetime import date, datetime, time |
|
|
|
|
|
|
|
import frappe |
|
|
|
from frappe import _ |
|
|
@@ -937,11 +937,13 @@ class Column: |
|
|
|
""" |
|
|
|
|
|
|
|
def guess_date_format(d): |
|
|
|
if isinstance(d, (datetime, date)): |
|
|
|
if isinstance(d, (datetime, date, time)): |
|
|
|
if self.df.fieldtype == "Date": |
|
|
|
return "%Y-%m-%d" |
|
|
|
if self.df.fieldtype == "Datetime": |
|
|
|
return "%Y-%m-%d %H:%M:%S" |
|
|
|
if self.df.fieldtype == "Time": |
|
|
|
return "%H:%M:%S" |
|
|
|
if isinstance(d, str): |
|
|
|
return frappe.utils.guess_date_format(d) |
|
|
|
|
|
|
@@ -994,16 +996,22 @@ class Column: |
|
|
|
} |
|
|
|
) |
|
|
|
elif self.df.fieldtype in ("Date", "Time", "Datetime"): |
|
|
|
# guess date format |
|
|
|
# guess date/time format |
|
|
|
self.date_format = self.guess_date_format_for_column() |
|
|
|
if not self.date_format: |
|
|
|
self.date_format = "%Y-%m-%d" |
|
|
|
if self.df.fieldtype == "Time": |
|
|
|
self.date_format = "%H:%M:%S" |
|
|
|
format = "HH:mm:ss" |
|
|
|
else: |
|
|
|
self.date_format = "%Y-%m-%d" |
|
|
|
format = "yyyy-mm-dd" |
|
|
|
|
|
|
|
self.warnings.append( |
|
|
|
{ |
|
|
|
"col": self.column_number, |
|
|
|
"message": _( |
|
|
|
"Date format could not be determined from the values in this column. Defaulting to yyyy-mm-dd." |
|
|
|
), |
|
|
|
"{0} format could not be determined from the values in this column. Defaulting to {1}." |
|
|
|
).format(self.df.fieldtype, format), |
|
|
|
"type": "info", |
|
|
|
} |
|
|
|
) |
|
|
|