>>The following code is in a VB/VC H-File. What would the VFP equivalent be?
>>const LONG PTR_S_JOURNAL = 1;
>>const LONG PTR_S_RECEIPT = 2;
>>const LONG PTR_S_SLIP = 4;
>>
>>const LONG PTR_S_JOURNAL_RECEIPT= PTR_S_JOURNAL | PTR_S_RECEIPT;
>>const LONG PTR_S_JOURNAL_SLIP = PTR_S_JOURNAL | PTR_S_SLIP ;
>>const LONG PTR_S_RECEIPT_SLIP = PTR_S_RECEIPT | PTR_S_SLIP ;
>>
>>The first 3 are easy, but I do not understand the last 3. Are they concatenations of 2 constants? e.g., would PTR_S_JOURNAL_RECEIPT be defined as 1 | 2 ==> 12? PTR_S_JOURNAL_SLIP defined as 1 | 4 ==> 14?
>>
>
>Those are logical ORs; you can do the same thing with numerical values in VFP with addition, assuming that the bits involved do not have overlapping power of two values. For your examples,
>
>
>#DEFINE PTR_S_JOURNAL 1
>#DEFINE PTR_S_RECEIPT 2
>#DEFINE PTR_S_SLIP 4
>
>#DEFINE PTR_S_JOURNAL_RECEIPT PTR_S_JOURNAL + PTR_S_RECEIPT && 3
>#DEFINE PTR_S_JOURNAL_SLIP PTR_S_JOURNAL + PTR_S_SLIP && 5
>#DEFINE PTR_S_RECEIPT_SLIP PTR_S_RECEIPT + PTR_S_SLIP && 6
>There is also the bitor() function:
#DEFINE PTR_S_JOURNAL_RECEIPT bitor(PTR_S_JOURNAL, PTR_S_RECEIPT)
#DEFINE PTR_S_JOURNAL_SLIP bitor(PTR_S_JOURNAL, PTR_S_SLIP)
#DEFINE PTR_S_RECEIPT_SLIP bitor(PTR_S_RECEIPT, PTR_S_SLIP)