Supported File Formats
The Extrator de Tarefas Auvo accepts three file formats for processing:- CSV (
.csv) - Excel 97-2003 (
.xls) - Excel 2007+ (
.xlsx)
File Processing Implementation
The application uses pandas to read files with format-specific handling:app.py:32-45
Critical: skiprows Behavior
This is designed for Auvo system exports which include:- Header information (rows 1-5)
- Actual column headers (row 6)
- Data (rows 7+)
skiprows Parameter Details
Number of rows to skip from the top of the file before reading column headers.Used by:
pd.read_csv()for CSV filespd.read_excel()for Excel files
Required Column Structure
After the header row (row 6), the file must contain these exact columns:Date when the task was registered or completed.Format: Any date format recognized by pandas
Client name or identifier for the task.
Address where the task should be performed or service delivered.
Digital work order identifier or URL.Special Handling: If the value starts with
http, it’s automatically converted to a clickable HTML link in the UI and PDF exports.Task description or report. This is the primary search field.Purpose: All keyword filtering is performed on this column.Search Behavior:
- Case-insensitive matching
- Supports regex patterns
- NA/null values are excluded from matches
Column Filtering Logic
The application extracts only these columns from the filtered results:app.py:52-53
Keyword Search Implementation
app.py:47-50
Pipe-separated regex pattern combining all keywordsExample:
"solicitar peça|quebrado|trocar cabo"Case-insensitive search enabled
Excludes rows where Relato is null/NA
File Format Validation
Upload Validation
File format is validated at upload time:app.py:133-134
Error Handling
Raised when an unsupported file format is providedMessage: “Formato de arquivo não suportado. Use .csv, .xls ou .xlsx”
Excel Engine Configuration
For Excel files, the application uses openpyxl as the parsing engine:openpyxl is explicitly specified in
requirements.txt (version 3.1.5) and is required for reading .xlsx files.Example File Structure
skiprows=5 removes rows 1-5.