resistance is obsolete ™ ;-)

OGo Defaults related to addresses

Defaults.plist taken from LSAddress command bundle

BuildFormletterPath = "buildFormletter.py";

Custom Addresses

At least in theory you can have as many address records per person or company as you like. In practice not all views may display all addresses but only the predefined ones (feedback on that would be great).
Further some components may map to a certain address type (eg ZideStore is in this category).

LSAddressType = {
Enterprise = ( "ship", "bill" );
Person = ( "private", "mailing", "location" );
};

Custom Phone Numbers

Same like with addresses, you can have as many phone numbers as you like. You should keep the basic ones, like "01_tel". The phone numbers are prefixed by an integer for sorting purposes.

LSTeleType = {
Enterprise = ( "01_tel", "02_tel", "10_fax" );
Person = ( "01_tel", "02_tel",
"03_tel_funk",
"05_tel_private", "10_fax", "15_fax_private",
);
};

Extended Attributes

All "company" records (persons, companies and teams) can have custom attributes which are stored in the company_value table.

SkyPublicExtendedPersonAttributes = (
{ key = "email1"; type = 3; }, // email
{ key = "email2"; type = 3; }, // email
{ key = "email3"; type = 3; }, // email
{ key = "job_title"; }, // string
{ key = "other_title1"; }, // string
{ key = "other_title2"; }, // string
);
SkyPrivateExtendedPersonAttributes = (
);
SkyPublicExtendedEnterpriseAttributes = (
{ key = "email2"; type = 3; }, // email
{ key = "email3"; type = 3; }, // email
{ key = "job_title"; }, // string
{ key = "other_title1"; }, // string
{ key = "other_title2"; }, // string
);
SkyPrivateExtendedEnterpriseAttributes = (
);

Example:

SkyPublicExtendedPersonAttributes = (
{ key = Kaufart; },
{ key = Sportart; },
{ key = SportTyp; },
{ key = Aufmerksamkeit; }
);

... or using pulldown menus ...

SkyPublicExtendedPersonAttributes = (
{ key = Kaufart;
values = { INTERNET = INTERNET;
FILIALE = FILIALE;
VERSAND = VERSAND; };
},
... and so on ...
);

Converter What?

Ask Martin where this is used ...

ConverterAttributes = {
contentTypes = {
vCard = "text/x-vcard";
formLetter = "text/plain";
};
vCardKeys = {
prefix = "BEGIN:vCard\nVERSION:3.0\nFN:";
firstname = "";
middlename = " ";
name = " ";
address = "ADR;TYPE=WORK,POSTAL,PARCEL:";
address.street = "";
tel1.number = "\nTEL;TYPE=VOICE,MSG,WORK:";
tel2.number = "\nTEL;TYPE=VOICE,MSG,WORK:";
fax.number = "\nTEL;TYPE=FAX,WORK:";
url = "\nURL:";
suffix = "\nEND:vCard\n";
};
LSVCard = ("firstname", "middlename", "name", "tel1.number", "tel2.number",
"fax.number", "url"); };
RequiredAttributes = {
Person = ("degree", "firstname", "name", "salutation", "sex",
"email1");
Enterprise = ("description", "bank", "bank_code", "account");
Address = ("name1", "name2", "name3", "street", "zip", "city");
Telephone = ("number", "type", "info");
};
We welcome your feedback!
Trademarks.  
This site is sponsored by
SKYRIX Software AG
ZideOne GmbH
MDlink