Class DocumentInfoProvider
Implementation of IDocumentInfo; create through factory (see remarks)
Namespace: SuperOffice.CRM.Entities.Providers
Assembly: SoDataBase.dll
Syntax
public class DocumentInfoProvider : Object, IDocumentInfo2, IDocumentInfo
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Properties
ActiveDate
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public DateTime ActiveDate { get; }
Property Value
Type | Description |
---|---|
DateTime |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.AppointmentId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int AppointmentId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.ArchiveProvider
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int ArchiveProvider { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.AssociateFullName
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string AssociateFullName { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.AssociateId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int AssociateId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.AssociateLoginName
Get associate login name from the associate pointed to by the appointment.associate_id; if it does not exist then fall back to AssociateHistory. That table is populated automagically when an associate is deleted.
Declaration
public string AssociateLoginName { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Attention
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string Attention { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.ContactId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int ContactId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Description
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string Description { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Document
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public Document Document { get; }
Property Value
Type | Description |
---|---|
Document |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.DocumentId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int DocumentId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.DocumentTemplateInfo
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public IDocumentTemplateInfo DocumentTemplateInfo { get; }
Property Value
Type | Description |
---|---|
IDocumentTemplateInfo |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.ExternalReference
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string ExternalReference { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.FileName
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string FileName { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Header
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string Header { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.LockSemantics
Locking semantics requested/applied to a document
Declaration
public DocumentLockSemantics LockSemantics { get; }
Property Value
Type | Description |
---|---|
DocumentLockSemantics |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Name
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string Name { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.OurRef
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string OurRef { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.PersonId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int PersonId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.ProjectId
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public int ProjectId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.PublishEndDate
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string PublishEndDate { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.PublishStartDate
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string PublishStartDate { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Registered
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public DateTime Registered { get; }
Property Value
Type | Description |
---|---|
DateTime |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Salutation
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string Salutation { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.SerialNumber
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string SerialNumber { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.SuggestedDocumentId
Get the suggested document ID for the document. Return 0 is not a suggested document
Declaration
public int SuggestedDocumentId { get; }
Property Value
Type | Description |
---|---|
Int32 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.YourRef
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public string YourRef { get; }
Property Value
Type | Description |
---|---|
String |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Methods
Create(Document)
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public static IDocumentInfo2 Create(Document document)
Parameters
Type | Name | Description |
---|---|---|
Document | document |
Returns
Type | Description |
---|---|
IDocumentInfo2 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.Create(Int32)
Implementation of IDocumentInfo; create through factory (see remarks)
Declaration
public static IDocumentInfo2 Create(int documentId)
Parameters
Type | Name | Description |
---|---|---|
Int32 | documentId |
Returns
Type | Description |
---|---|
IDocumentInfo2 |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedDecimal(Int32)
Return a user defined value of type decimal
Declaration
public string GetUserDefinedDecimal(int fieldNo)
Parameters
Type | Name | Description |
---|---|---|
Int32 | fieldNo | Index of field to retrieve value for |
Returns
Type | Description |
---|---|
String | String representation of the value of specified field |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedDecimal(String)
Get the decimal udef value based on the prog.id name of the udef field.
Declaration
public double GetUserDefinedDecimal(string progId)
Parameters
Type | Name | Description |
---|---|---|
String | progId | Program name of udef field |
Returns
Type | Description |
---|---|
Double | double value of field, or NAN if field not found |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedInt(Int32)
Return a user defined value of type int
Declaration
public string GetUserDefinedInt(int fieldNo)
Parameters
Type | Name | Description |
---|---|---|
Int32 | fieldNo | Index of field to retrieve value for |
Returns
Type | Description |
---|---|
String | String representation of the value of specified field |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedInt(String)
Get the int udef value based on the prog.id name of the udef field.
Declaration
public int GetUserDefinedInt(string progId)
Parameters
Type | Name | Description |
---|---|---|
String | progId | Program name of udef field |
Returns
Type | Description |
---|---|
Int32 | int value of field, or MINVALUE if field not found |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedString(Int32)
Return a user defined value of type string
Declaration
public string GetUserDefinedString(int fieldNo)
Parameters
Type | Name | Description |
---|---|---|
Int32 | fieldNo | Index of field to retrieve value for |
Returns
Type | Description |
---|---|
String | Value of specified field |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.GetUserDefinedString(String)
Get the string udef value based on the prog.id name of the udef field.
Declaration
public string GetUserDefinedString(string progId)
Parameters
Type | Name | Description |
---|---|---|
String | progId | Program name of udef field |
Returns
Type | Description |
---|---|
String | string value of field, or NULL if field not found |
Remarks
To create an instance of DocumentInfoProvider, use
var info = ClassFactory.Create<IDocumentInfo>(doc);
where doc is a Document, to use an already-loaded entity object (that may also contain unsaved data); or where doc is an int that is a documentId, which will cause database fetches. The factory methods at the bottom of this class will handle both cases.
If you are in the Cpp world, or otherwise have unsaved data that you would want to use without incurring the overhead of an entity object, instantiate a SimpleDocumentInfo instead, fully populate it, and pass that to the factory.