IBM Lotus Symphony


Lotus Symphony Spreadsheetsбағдарламасында бағдарламалау үшін қондырмалар

Ескерту белгішесі Келесіде сипатталған қондырмалар арқылы Lotus® Symphony™ Spreadsheets бағдарламасын кеңейту әдісі ескірген. Сыйысымдылықты бар қондырмалармен қамтамасыз ету үшін, интерфейстер әлі жарамды және қолдау көрсетілген, бірақ жаңа қондырмаларды бағдарламалау үшін, жаңа API функцияларын пайдалануыңыз тиіс.

Lotus Symphony Spreadsheets бағдарламасы электрондық кестелермен жұмыс істеуге қосымша функцияларды беретін сыртқы бағдарламалау модульдері болып табылатын, қондырмалар арқылы кеңейтуге болады. Бұлар Шебер функциясындағы Қондырма санатында тізімге енгізілген. Егер қондырманы өзіңіз бағдарламалағыңыз келсе Add-In yourself, you can learn here which functions must be exported by the external DLL so that the Add-In can be successfully attached.

Lotus Symphony бағдарламасы қолайлы DLL үшін теңшелімде анықталған қондырма қалтасын іздейді. Lotus Symphony бағдарламасы тануы үшін, төменде түсіндірілгендей, DLL нақты сипаттарды қамтуы тиіс. Осы ақпарат жеке қондырмаңызды Lotus Symphony Spreadsheets бағдарламасыныңШебер функциясы үшін бағдарламалауға рұқсат береді.

Қондырма ұғымы

Әрбір қондырма кітапханасы бірнеше функцияны береді. Кейбір функциялар әкімшілік мақсатта пайдаланылады. Жеке функцияңызға кез келген атауды таңдай аласыз. Бірақ, олар параметрді өткізу туралы нақты ережелерді сақтауы тиіс. Нақты атау беру мен байланыс туралы келісімing әр түрлі платформаларға өзгереді.

AddIn DLL функциялары

Ең кемінде, GetFunctionCount мен GetFunctionData әкімші функциялары бар болуы тиіс. Осыларды пайдалану, параметр түрлері сияқты функциялар мен қайтару мәндері анықталуы тиіс. Қайтару мәндері сияқты, Қос және Жол түрлеріне қолдау көрсетілген. Параметрлер сияқты, қосымша Қос жиым, Жол жиымы және Ұяшық жиымы ұяшық аймақтарына қолдау көрсетіледі.

Параметрлер сілтемелерді пайдаланып өткізілді. Сондықтан, мына мәндердің өзгеруі негізі мүмкін. Бірақ, бұл Lotus Symphony Spreadsheets бағдарламасында қолдау көрсетілмеген, себебі электрондық кестелерде қажет емес.

Кітапханалар орындау ортасы кезінде қайта жүктелуі мүмкін және олардың мазмұндары әкімшы функциясымен талдануы мүмкін. Әрбір функцияға, есеп пен параметр түрлері, ішкі және сыртқы функция атаулары мен әкімші нөмірі туралы ақпарат қолжетімді.

Фнукциялар синхронды аталған және олардың нәтижелерін жылдам береді. Негізгі уақыт функциялары (асинхронды функциялар) да мүмкін; бірақ, олардың күрделілігі себебінен егжей-тегжейлі түсіндірілмеді.

Интерфейс туралы жалпы ақпарат

Қондырма функциясындағы Lotus Symphony Spreadsheets бағдарламасына тіркелген көптеген параметрлер 16: бір қайтару мәні және ең көп 15 функцияның енгізу параметрлері.

Деректер түрі төмендегідей анықталды:

1-кесте. Деректер түрінің анықтамалары
Деректер түрі Анықтама
CALLTYPE

Windows бағдарламасында: FAR PASCAL (_far _pascal)

Басқа: әдепкі (әдепкі арнайы амалдық жүйе)

USHORT 2 байт таңбасыз бүтін сан
ҚОС 8 байт платформаға тәуелді пішім
Paramtype

Платформаға тәуелді бүтін сан сияқты

PTR_DOUBLE =0 екеуге арналған көрсеткіш

PTR_STRING =1 дұрыс емес шұғыл тоқтату жолына арналған көрсеткіш

PTR_DOUBLE_ARR =2 қос жиымға арналған көрсеткіш

PTR_STRING_ARR =3 жол жиымына арналған көрсеткіш

PTR_CELL_ARR =4 ұяшық жиымына арналған көрсеткіш

NONE =5

DLL функциялары

Төменде сол функциялардың сыртқы DLL аталған сипаттамаларын табасыз.

Барлық DLL функцияларына келесі қолданылады:

бос CALLTYPE fn(out, in1, in2, ...)

Шығару: нәтиже мәні

Енгізу: Ұяшық аумағы қос жиым, жол жиымы немесе ұяшық жиымы түрлері сияқты кез келген түрлер саны (қос&, таңба*, қос*, таңба**, ұяшық аумағы).

GetFunctionCount()

Сілтеме параметрінің басқару функциясынсыз көптеген функцияларды береді. Әрбір функцияда 0 мен nCount-1 арасында бірегей сандар бар. Осы нөмір GetFunctionData және GetParameterDescription функцияларына кейіндеу қажет болады.

Синтакс

CALLTYPE GetFunctionCount(USHORT& nCount)тазарту

Параметр

USHORT &nCount:

Шығару: бірнеше қондырма функцияларын қамтуды есептеген айнымалы мәнге сілтеме жасаңыз. Мысалы: егер қондырма 5 функцияны Lotus Symphony Spreadsheets бағдарламасына берсе, онда nCount=5.

GetFunctionData()

Қондырма функциясы туралы барлық маңызды ақпараттарды анықтайды.

Синтакс

CALLTYPE GetFunctionData(USHORT& nNo, char* pFuncName, USHORT& nParamCount, Paramtype* peType, char* pInternalName) тазарту

Параметр

USHORT& nNo:

Енгізу: Функция нөмірі 0 мен nCount-1 дейінгі аралықта болуы керек.

таңба* pFuncName:

Шығару: Функция атауы бағдарламалаушы көргендей, DLL ішінде аталғандай. Осы атау Шебер функциясында пайдаланылған атауды анықтамайды.

USHORT& nParamCount:

Шығару: AddIn функциясындағы параметрлер саны. Бұл сан 0 үлкен болуы керек, себебі мұнда әрқашан нәтиже мәні бар; ең көп сан 16 болып табылады.

Paramtype* peType:

Шығару: жиым меңзері параметр түрінің шамамен 16 айнымалы мән. Бірінші nParamCount енгізулері параметрдің ыңғайлы түрімен толтырылған.

char* pInternalName:

Шығару: функция атауы пайдаланушы көргендей, Шебер функциясынды пайда болатындай. Умлауттарды қамтуы мүмкін.

pFuncName және pInternalName параметрлері 256 өлшемімен Lotus Symphony Spreadsheets бағдарламасында іске асырылған таңба жиымдары болып табылады.

GetParameterDescription()

Қондырма функциясы мен оның параметрлерінің қысқаша сипатталарын береді. Параметр ретінде, бұл функция Шебер функциясында функция мен параметр сипаттамасын көрсету үшін пайдаланыла алады.

Синтакс

CALLTYPE GetParameterDescription(USHORT& nNo, USHORT& nParam, char* pName, char* pDesc)тазарту

Параметр

USHORT& nNo:

Енгізу: кітапханадағы функциялар нөмірі; 0 мен nCount-1 мәні арасында.

USHORT& nParam:

Енгізу: сипаттаманың қай параметрге берілгенін көрсетеді; параметрлер 1 басталады. Егер nParam 0 болса, сипаттама pDesc ішінде берілуді есептейді; бұл жағдайда, pName ешқандай мағынасы жоқ.

таңба* pName:

Шығару: параметр атауын немесе түрін қабылдайды, мысалы, "Нөмір" немесе "Жол" не "Күн" және т.б. сөзі. Lotus Symphony Spreadsheets бағдарламасында [256] таңбасы ретінде іске асырылды.

таңба* pDesc:

Шығару: параметр сипаттамасын қабылдайды, мысалы, "Кеңістік есептелуі тиіс мән." Lotus Symphony Spreadsheets бағдарламасында [256] таңбасы ретінде іске асырылды.

pName мен pDesc таңба жиымдары Lotus Symphony Spreadsheets бағдарламасында 256 өлшемінде іске асырылды. Шебер функциясында қолжетімді бос орын шектелгенін және 256 таңбаның толық пайдаланыла алмайтындығын ескеріңіз.

Ұяшық аймақтары

Келесі кестелер, ұяшық аймақтарын өткізудің орнына, сыртқы бағдарлама модулі арқылы берілуі тиіс деректер құрылымы туралы ақпаратты қамтиды. Lotus Symphony Spreadsheets бағдарламасы деректер түріне байланысты, үш түрлі жиымдар арасында ажыратады.

Қос жиым

Параметр ретінде, Нөмір/Қос түрінің мәндері мен ұяшық аймағы өткізіле алады. Lotus Symphony Spreadsheets бағдарламасындағы қос жиым төмендегідей анықталды:

2-кесте. Қос жиымның анықтамасы
Ығысу Атауы Сипаттама
0 1Баған Баған нөмірі ұяшық аумағының жоғарғы сол жағында; нөмірлеу 0 басталады.
2 1Жол Ұяшық аумағындағы үстіңгі сол жақтағыe жол саны; сандар 0-ден басталады.
4 Қойынды1 Ұяшық аумағының жоғарғы сол жақ бұрышының кесте саны; санау 0-ден басталады.
6 l2Баған Баған нөмірі ұяшық аумағының астыңғы сол жағында; нөмірлеу 0 басталады.
8 2Жол Ұяшық аумағындағы астыңғы оң жақтағы жол саны; сандар 0-ден басталады.
10 Қойынды2 Ұяшық аумағының төменгі оң жақ бұрышының кесте саны; санау 0-ден басталады.
12 Санау Келесі элементтердің нөмірі. Бос ұяшықтар саналмайды немесе өткізіледі.
14 Баған Элементтің баған саны; нөмірлеу 0 басталады.
16 Жол Элементтің жолдық саны; сандар 0-ден басталады.
18 Қойынды Элементтің кестелік саны; санау 0-ден басталады.
20 Қате 0 мәні "қате жоқ" ретінде анықталған қате саны. Егер элемент ұяшық өрнегінде болса қатенің мәні өрнекпен анықталады.
22 Мән қос/жылжытпалы нүкте түрінің 8 байттық IEEE айнымалы мәні
30 ... Жаңа элемент

Жол жиымы

Мәтін деректер түрінің мәнін қамтитын және жол жиымы ретінде өткізілген ұяшық аймағы. Lotus Symphony Lotus Symphony Spreadsheets бағдарламасындағы жол жиымы төмендегідей анықталды:

3-кесте. Жол жиымының анықтамасы
Ығысу Атауы Сипаттама
0 1Баған Баған нөмірі ұяшық аумағының жоғарғы сол жағында; нөмірлеу 0 басталады.
2 1Жол Ұяшық аумағындағы үстіңгі сол жақтағыe жол саны; сандар 0-ден басталады.
4 Қойынды1 Ұяшық аумағының жоғарғы сол жақ бұрышының кесте саны; санау 0-ден басталады.
6 l2Баған Баған нөмірі ұяшық аумағының астыңғы сол жағында; нөмірлеу 0 басталады.
8 2Жол Ұяшық аумағындағы астыңғы оң жақтағы жол саны; сандар 0-ден басталады.
10 Қойынды2 Ұяшық аумағының төменгі оң жақ бұрышының кесте саны; санау 0-ден басталады.
12 Санау Келесі элементтердің нөмірі. Бос ұяшықтар саналмайды немесе өткізіледі.
14 Баған Элементтің баған саны; нөмірлеу 0 басталады.
16 Жол Элементтің жолдық саны; сандар 0-ден басталады.
18 Қойынды Элементтің кестелік саны; санау 0-ден басталады.
20 Қате 0 мәні "қате жоқ" ретінде анықталған қате саны. Егер элемент ұяшық өрнегінде болса қатенің мәні өрнекпен анықталады.
22 Len Жабық нөлдік байтты қосқандағы, келесі жолдың ұзындығы. Егер жабық нөлдік байтты қамтитын ұзындық тақ мәнге тең болса, жұп мәнге сәйкес келетіндей етіп екінші нөлдік байт қосылады. Сондықтан, Len ((StrLen+2)&~1) пайдаланып есептелінеді.
24 Тармақ Жабық нөлдік байтты жол
24+Len ... Жаңа элемент

Ұяшық жиымы

Ұяшық жиымдары сндар сияқты мәтінді қамтитын ұяшық аймақтарын шақыруға пайдаланылған. Lotus Symphony Spreadsheets бағдарламасындағы ұяшық жиымы төмендегідей анықталды:

4-кесте. Ұяшық жиымының анықтамасы
Ығысу Атауы Сипаттама
0 1Баған Баған нөмірі ұяшық аумағының жоғарғы сол жағында; нөмірлеу 0 басталады.
2 1Жол Ұяшық аумағындағы үстіңгі сол жақтағыe жол саны; сандар 0-ден басталады.
4 Қойынды1 Ұяшық аумағының жоғарғы сол жақ бұрышының кесте саны; санау 0-ден басталады.
6 l2Баған Баған нөмірі ұяшық аумағының астыңғы сол жағында; нөмірлеу 0 басталады.
8 2Жол Ұяшық аумағындағы астыңғы оң жақтағы жол саны; сандар 0-ден басталады.
10 Қойынды2 Ұяшық аумағының төменгі оң жақ бұрышының кесте саны; санау 0-ден басталады.
12 Санау Келесі элементтердің нөмірі. Бос ұяшықтар саналмайды немесе өткізіледі.
14 Баған Элементтің баған саны. Нөмірлеу 0 басталады.
16 Жол Элементтің жолдық саны; сандар 0-ден басталады.
18 Қойынды Элементтің кестелік саны; санау 0-ден басталады.
20 Қате 0 мәні "қате жоқ" ретінде анықталған қате саны. Егер элемент ұяшық өрнегінде болса қатенің мәні өрнекпен анықталады.
22 Түр Ұяшық мазмұнының түрі, 0 == Қос, 1 == Жол
24 Мән немесе Len

Егер терсе == 0: қос/жылжытпалы нүкте түрінің 8 байттық IEEE айнымалы мәні

Егер түр == 1 болса: Жабық нөлдік байтты қосқандағы, келесі жолдың ұзындығы. Егер жабық нөлдік байтты қамтитын ұзындық тақ мәнге тең болса, жұп мәнге сәйкес келетіндей етіп екінші нөлдік байт қосылады. Сондықтан, Len ((StrLen+2)&~1) пайдаланып есептелінеді.

26 егер түрі==1 болса Тармақ Егер түрі == 1 болса: Жабық нөлдік байтты жол
32 немесе 26+Len ... Жаңа элемент

Өнім туралы пікір | Қосымша құжаттама | Сауда белгілері