SInvceDet::SeekByCstNum (Interface: SInvceDet)
 
Seeks a Sales Invoice Detail line by its customer number.
 
VARIANT_BOOL SeekByCstNum (
    enum eSeekMode eSeekMode,
    LONG lCstNum,
    LONG lSubNum,
    DATE dDocDate,
    BSTR bsBook,
    LONG lDocNum,
    SHORT sLineNum
)
 
Key information
This method uses key number 3 (See SwapKey).
This is a unique key.
 
Key segment information
Segment NameTypeOrderCollation
pCstNumLONG (unsigned)Ascending-
pCstSubNumLONG (unsigned)Ascending-
pDocDateDATE (date)Ascending-
pBookBSTRAscendingCase insensitive
pDocNumLONG (unsigned)Ascending-
pLineNumSHORT (unsigned)Ascending-
 
Parameters
eSeekMode
[in] A value of the 'eSeekMode' enumeration.
lCstNum
[in] The customer number of the Sales Invoice of which you want to seek a detail line.
lSubNum
[in] The customer subnumber of the Sales Invoice of which you want to seek a detail line.
dDocDate
[in] The document date of the Sales Invoice of which you want to seek a detail line.
bsBook
[in] The book code of the Sales Invoice of which you want to seek a detail line.
lDocNum
[in] The document number of the Sales Invoice of which you want to seek a detail line.
sLineNum
[in] The line number of the Sales Invoice Detail line you want to seek.
 
Remarks
This number is a 0-based index, i.e. it starts from 0. Therefore the value of this parameter is 1 less than the numbers shown in the Venice grids and 1 less than the value returned by the property vLine (see properties)!
 
Return value
True if the record with the given properties was found, otherwise false.
 
See Also
CreateSInvceDet
GetDBStatus
GetNext
 
Samples
 
C++
 
// Seek the data of all detail lines of all sales invoices for the customer with number 25/0 with a document date of '31/03/2024'
COleDateTime odtDocDate;
odtDocDate.SetDate (2024, 3, 31);
long lCstNum = 25, lSubNum = 0;
pSInvceDet->SeekByCstNum (smGreaterOrEqual, lCstNum, lSubNum, odtDocDate, "", 0, 0);
while (pSInvceDet->GetDBStatus () == 0 && (long)pSInvceDet->pCstNum == lCstNum && (long)pSInvceDet->pCstSubNum == lSubNum && (DATE)pSInvceDet->pDocDate == odtDocDate)
{
    // Process record data
    
    pSInvceDet->GetNext ();
}

C#
 
// Seek the data of all detail lines of all sales invoices for the customer with number 25/0 with a document date of '31/03/2024'
DateTime dtDocDate = new DateTime (2024, 3, 31);
int iCstNum = 25, iSubNum = 0;
oSInvceDet.SeekByCstNum (eSeekMode.smGreaterOrEqual, iCstNum, iSubNum, dtDocDate, "", 0, 0);
while (oSInvceDet.GetDBStatus () == 0 && (int)oSInvceDet.pCstNum == iCstNum && (int)oSInvceDet.pCstSubNum == iSubNum && (DateTime)oSInvceDet.pDocDate == dtDocDate)
{
    // Process record data
    
    oSInvceDet.GetNext ();
}

VBS
 
' Seek the data of all detail lines of all sales invoices for the customer with number 25/0 with a document date of '31/03/2024'
Dim dtDocDate
Dim iCstNum, iSubNum
dtDocDate = #3/31/2024#
iCstNum = 25
iSubNum = 0
Call oSInvceDet.SeekByCstNum(smGreaterOrEqual, iCstNum, iSubNum, dtDocDate, "", 0, 0)
While oSInvceDet.GetDBStatus() = 0 And oSInvceDet.pCstNum = iCstNum And oSInvceDet.pCstSubNum = iSubNum And oSInvceDet.pDocDate = dtDocDate
    ' Process record data

    Call oSInvceDet.GetNext()
Wend

VB.NET
 
' Seek the data of all detail lines of all sales invoices for the customer with number 25/0 with a document date of '31/03/2024'
Dim dtDocDate As Date
Dim iCstNum, iSubNum As Integer
dtDocDate = #3/31/2024#
iCstNum = 25
iSubNum = 0
oSInvceDet.SeekByCstNum(eSeekMode.smGreaterOrEqual, iCstNum, iSubNum, dtDocDate, "", 0, 0)
While oSInvceDet.GetDBStatus() = 0 And oSInvceDet.pCstNum = iCstNum And oSInvceDet.pCstSubNum = iSubNum And oSInvceDet.pDocDate = dtDocDate
    ' Process record data

    oSInvceDet.GetNext()
End While