| salehist_id | Primary key | PK | No |
| sale_id | The sale | FK sale | No |
| associate_id | Owning associate | FK associate | No |
| group_idx | Owner’s group whn sale was created | FK UserGroup | No |
| contact_id | Optional contact reference | FK contact | No |
| person_id | Optional person reference | FK person | Yes |
| registered | Registered date | UtcDateTime | Yes |
| saledate | (expected | lost | won) sales date | DateTime | No |
| amount | Total sale amount | Double | Yes |
| probability_idx | Pointer to probability list value | FK Prob | No |
| appointment_id | For future use | FK appointment | No |
| text_id | Optional long description | FK text | Yes |
| project_id | Optional project reference | FK project | No |
| earning | Earning on sale | Double | Yes |
| earning_percent | Earning as percent of total | Double | Yes |
| userdef_id | User-defined fields reference | FK udsalesmall | Yes |
| userdef2_id | User-defined fields reference | FK udsalelarge | Yes |
| heading | Sale heading (short description?) | String(219) | Yes |
| credited_id | Who is to be credited for the sale | FK Credited | Yes |
| source_id | Source of order | FK Source | Yes |
| reason_id | Why we lost it | FK Reason | Yes |
| comptr_id | Competitor | FK Comptr | Yes |
| currency_id | Currency of sale | FK Currency | Yes |
| probability | Actual probability, may differ from the one in the list | UShort | Yes |
| status | Status (open, closed, lost) | Enum SaleStatus | Yes |
| done | Done (0=don’t know, 1 = No, 2=Yes) | Enum SaleDone | Yes |
| number1 | Alphanumeric user field | String(49) | Yes |
| visibility | Obsolete, but still maintained denormalization of visiblefor | UShort | Yes |
| source | For future integration use; source of record | UShort | Yes |
| registered_associate_id | Registered by whom | FK associate | No |
| updated | Last updated | UtcDateTime | No |
| updated_associate_id | Last updated by whom | FK associate | No |
| updatedCount | Number of updates made to this record | UShort | No |
| activeLinks | Number of active links to documents and such | UInt | Yes |
| saleType_id | Link to list, sale type (big sale, small sale, no-process sale, …) | FK SaleType | Yes |
| postitText_id | Paperclip text | FK text | Yes |
| reasonStalled_id | If the status is stalled, it should be commented here | FK ReasonStalled | Yes |
| reopenDate | Date the sale is to be reopened; valid only for status=stalled. Not necessarily the same as the nextDueDate. | DateTime | Yes |
| nextDueDate | Next due date, this is a denormalization of ‘closest future activity date, or most recent if no future activities’. Maintained by the system, but very convenient for searching. | DateTime | Yes |
| nddAppointment_id | ID, can be 0, of the appointment that “caused” the nextDueDate | FK appointment | Yes |
| reasonSold_id | Reason why we made the sale | FK ReasonSold | Yes |
| saleTypeCat_id | Category of sale type, slaved from saletype | FK SaleTypeCat | Yes |
| stage_when_closed_id | The stage the sale was in when it was closed (sold or lost) | FK Prob | Yes |
| sale_cycle | Snapshot of sale.sale_cycle at the time this history row was written. | Int | Yes |