GetStoreDocInvalidFieldNum method

The field number returned is the zero-based index of the folder field which caused the problem. If a previous StoreDoc method did not return one of the listed codes, the value received is unpredictable.

Method
short GetStoreDocInvalidFieldNum(
VARIANT * pFieldNum )
Parameters
pFieldNum
Points to a variable to receive the number of the invalid field. On return, this variable is set to type VT_I2.
Description
If a StoreDoc method was previously used and the return code was one of the following codes:
  • ARS_OLE_RC_INVALID_DATE_FIELD
  • ARS_OLE_RC_INVALID_INTEGER_FIELD
  • ARS_OLE_RC_INVALID_DECIMAL_FIELD
  • ARS_OLE_RC_TOO_MANY_VALUE_CHARS
  • ARS_OLE_RC_INVALID_APPLGRP_FIELD_TYPE
Return Value
Refer to return codes.
See Also
StoreDoc method

C/C++

The following example retrieves the invalid field number following a StoreDoc.
CArsOle * pArsCtrl;
short rc;
SAFEARRAY * pSA;
VARIANT var;
BSTR bstrElement;
long i;
.
.
pSA = SafeArrayCreateVector(VT_BSTR, 0, 2);
if ( pSA == NULL )
  ERROR;

bstrElement = SysAllocStringByteLen ("255-546-667", 11);
i = 0;
SafeArrayPutElement (pSA, &i, bstrElement);
bstrElement =SysAllocStringByteLen ("06/07/94", 8);
i = 1;
SafeArrayPutElement (pSA, &i, bstrElement);

var.vt = VT_ARRAY | VT_BSTR;
var.parray = pSA;
rc = pArsCtrl->StoreDoc( "g:\\download \\file.afp",
                         "BKH-CRD",
                         "BKH-CRD",
                         &var );
if ( rc != ARS_OLE_RC_SUCCESS )
{
  if ( rc == ARS_OLE_RC_INVALID_DATE_FIELD |
       rc == ARS_OLE_RC_INVALID_INTEGER_FIELD |
       rc == ARS_OLE_RC_INVALID_DECIMAL_FIELD |
       rc == ARS_OLE_RC_TOOMANY_VALUE_CHARS |
       rc == ARS_OLE_RC_INVALID_APPLGRP_FIELD_TYPE )
  {
    VARIANT var1;
    rc = pArsCtrl->GetStoreDocInvalidFieldNum(&var1);
    .
    .
    .
  }
  ERROR;
}

Visual Basic

Dim values(2) As String
Dim rc As Integer
.
.
.
values(0) = "255-546-667"
values(1) = "06/07/94"
var = values

rc = ArsOle.StoreDoc ("g:\download \file.afp",  _
                      "BKH-CRD",                _
                      "BKH-CRD",                _
                      var)
if rc <> ARS_OLE_RC_SUCCESS Then
  if rc = ARS_OLE_RC_INVALID_DATE_FIELD or
     rc = ARS_OLE_RC_INVALID_INTEGER_FIELD or
     rc = ARS_OLE_RC_INVALID_DECIMAL_FIELD or
     rc = ARS_OLE_RC_TOOMANY_VALUE_CHARS or
     rc = ARS_OLE_RC_INVALID_APPLGRP_FIELD_TYPE then
    rc = ArsOle.GetStoreDocInvalidFieldNum (var1)
  End If
  MsgBox "ERROR"
  End
End If
.
.
.