Maingiliano ya Delphi ni ya nini? Vipengele vya kufanya kazi na miingiliano huko Delphi. Vidokezo kila mahali, vidokezo kila wakati

Hii ni makala kulingana na maswali kwenye vikao: "Ninawezaje kurudisha kamba kutoka kwa DLL?", "Jinsi ya kupitisha na kurejesha safu ya rekodi?", "Jinsi ya kupitisha fomu kwa DLL?".

Ili usitumie nusu ya maisha yako kuifikiria, katika nakala hii nitaleta kila kitu kwenye sinia.

Mada za kifungu hiki zimeguswa zaidi ya mara moja kwenye blogi hii kwa viwango tofauti, lakini katika nakala hii zimekusanywa pamoja na kuhesabiwa haki. Kwa kifupi, unaweza kutupa kiunga cha nakala hii kwa wale wanaoendeleza DLL.

Kumbuka Muhimu: makala lazima isomwe mfululizo. Mifano ya kanuni hutolewa tu kama mifano, katika kila hatua (hatua) ya kifungu, msimbo wa mfano huongezwa na maelezo mapya. Kwa mfano, mwanzoni kabisa mwa makala hakuna ushughulikiaji wa makosa; mbinu za "classical" zimeonyeshwa (kama vile kutumia GetLastError , mkusanyiko wa sdtcall, n.k.), ambazo hubadilishwa na zinazotosha zaidi kadiri makala inavyoendelea. Hii ilifanyika ili miundo "mpya" ("isiyo ya kawaida") isizue maswali. Vinginevyo, itakuwa muhimu kuwekea kidokezo kwa kila mfano kama vile: “hii inajadiliwa katika aya iliyo hapa chini, lakini hiyo imejadiliwa katika aya hii.” Kwa hali yoyote, mwishoni mwa kifungu kuna kiunga cha nambari iliyotengenezwa tayari, iliyoandikwa kwa kuzingatia kila kitu kilichosemwa katika kifungu hicho. Unaweza tu kuichukua na kuitumia. Na makala hiyo inaeleza kwa nini na kwa nini. Ikiwa huna nia ya "kwa nini na kwa nini", tembeza hadi mwisho hadi mwisho na kiungo cha kupakua mfano.

Uumbaji kiolesura mtumiaji amepunguzwa kuchagua kutoka kwa palette ya vipengele vipengele vya Delphi muhimu kwa programu kufanya kazi, kutumikia kiolesura usimamizi, vilevile kiolesura kuonyesha habari, na kuihamisha kwa Fomu yenye mpangilio unaofuata.

Kiolesura cha mtumiaji unachounda kinapaswa kutumia vipengele vya kawaida vinavyojulikana kwa watumiaji na kutoa urahisi wa hali ya juu. Yote hii hatimaye imedhamiriwa na kigezo kama ufanisi wa kiolesura - matokeo ya juu na juhudi ndogo.
Kanuni za kuunda kiolesura cha mtumiaji-kirafiki zinajulikana. Kanuni tatu kuu zinaweza kuzingatiwa kama kanuni za jumla wakati wa kuunda miingiliano ya watumiaji:

  1. Programu inapaswa kusaidia kukamilisha kazi, na sio kuwa kazi hiyo.
  2. Wakati wa kufanya kazi na programu, mtumiaji haipaswi kujisikia kama mjinga.
  3. Programu inapaswa kufanya kazi kwa njia ambayo mtumiaji haoni kompyuta kama mjinga.
Kanuni ya kwanza- hii ndio inayoitwa "uwazi" wa kiolesura. Kiolesura cha mtumiaji kinapaswa kuwa angavu, rahisi kujifunza, na si kuleta matatizo kwa mtumiaji ambayo atalazimika kushinda wakati wa mchakato wa kazi. Tumia vipengele vya kawaida bila urembo usio wa lazima, tumia mbinu za udhibiti zinazotumiwa na programu zinazofanana, na utafikia vigezo vya utendaji. kanuni ya kwanza.

Kanuni ya pili ni kupuuza uwezo wa kiakili wa watumiaji. Kutokana na uzoefu wangu mwenyewe, najua kwamba mara nyingi watumiaji hawajui tu jinsi ya kufanya kazi kwenye kompyuta, lakini wanaogopa tu kufanya chochote peke yao. Kwa hiyo, interface ya mtumiaji inapaswa kuwa ya kirafiki iwezekanavyo.
Aidha, hofu ya watumiaji mara nyingi ni haki, kwa sababu gharama ya programu, na hata kompyuta yenyewe, haiwezi kulinganishwa na gharama, kwa mfano, ya database iliyoundwa kwa miaka mingi ya jitihada. Ndio sababu, wakati wa kuunda kiolesura cha mtumiaji, mpangaji programu lazima kila wakati ajenge "ulinzi wa kipumbavu" kwenye programu - dhidi ya vitendo visivyo sahihi na ingizo la mtumiaji la data isiyo sahihi. Lakini watayarishaji wengine wa programu huchukuliwa sana na ulinzi kama huo, huifanya kuwa intrusive, na kwa sababu hiyo, operesheni ya programu inafanana na maarufu "hatua moja kwenda kushoto, hatua ya kulia inachukuliwa kuwa kutoroka"! Na kile programu hutengeneza kama suluhisho la shida huanza kuunda shida yenyewe.
Kwa kuzingatia kanuni ya pili hakuna haja ya kuruhusu programu "kusahihisha" vitendo vya mtumiaji na kuonyesha hasa jinsi anapaswa kutenda, na kumlazimisha katika mfumo mwembamba. Pia, haupaswi kubebwa sana na kuonyesha ujumbe wa haraka wa habari, haswa zile za mazungumzo, kwa kuwa hii inasumbua mtumiaji kutoka kwa kazi. Itakuwa bora kutoa uwezo wa kuzima vidokezo kabisa.

Kanuni ya tatu ni kuunda programu yenye uwezo wa juu zaidi wa "kiakili". Licha ya maendeleo ya haraka ya teknolojia ya kompyuta, hata programu zinazotumiwa sana zinaweza kuitwa tu kuwa na akili ya bandia. Wanaingilia kazi ya mtumiaji kwa kuonyesha visanduku vya mazungumzo na maswali ya kijinga ambayo husababisha kuchanganyikiwa hata katika hali rahisi. Kwa sababu hiyo, watumiaji husema mioyoni mwao: “Ni mashine ya kijinga kama nini!”
Binafsi ninakerwa na maswali ya mara kwa mara kutoka kwa takriban wahariri wote wa maandishi kuhusu kuhifadhi maandishi yaliyobadilishwa, ingawa maandishi asilia na ya sasa hayatofautiani na herufi moja. Ndio, niliandika kitu, lakini kisha nikarudisha kila kitu, ni kweli haiwezekani kubaini! Lazima niangalie ikiwa sijaharibu chochote.

Jaribu kufuata sheria zifuatazo:

Vipengele vya kiolesura cha kawaida
Tumia vipengele ambavyo ni vya kawaida kwa kipengele hiki cha kiolesura. Baada ya kukutana na programu yako, mtumiaji hatapoteza muda kujua kila mmoja, lakini ataanza kufanya kazi mara moja - hii ni moja ya ishara za programu iliyofanywa kitaaluma.
Palette ndogo ya zana
Jaribu kutotumia vipengele vingi tofauti. Na kwa kawaida, baada ya kutumia sehemu moja ya kawaida mahali fulani katika sehemu moja, katika hali kama hiyo pia tumia.
Nafasi sawa kati ya vidhibiti
Weka vipengele vya kiolesura kwa umbali sawa kutoka kwa kila mmoja. Vipengele vilivyotawanyika bila mpangilio huunda hisia ya bidhaa iliyotengenezwa bila utaalamu. Na kinyume chake, uwekaji kuthibitishwa kwa uangalifu wa vifungo, swichi, masanduku ya kuangalia na vipengele vingine vinavyofanya interface kwenye Fomu ni ishara ya kazi ya ubora wa juu.
TabOrder. "Sahihi" utaratibu
TabOrder ni mpangilio ambao kishale cha skrini husogea kwenye vidhibiti wakati kitufe kinapobonyezwa Kichupo. Katika programu iliyoandikwa vizuri, mshale husogea kufuatia mantiki ya kazi ya mtumiaji na programu. Wakati wa kuunda programu, programu mara nyingi hubadilisha vipengele, huondoa baadhi, na kuongeza wengine kama inahitajika. Matokeo yake, katika mpango wa kumaliza mshale unaruka kwa machafuko karibu na Fomu. Baada ya kukamilisha programu, usisahau kusanidi TabOrder.
Uchaguzi wa fonti
Acha fonti pekee. Fonti chaguo-msingi za Delphi zinafaa kwa mfumo wowote ambao programu yako inaweza kuendeshwa. Tumia herufi nzito ili kuangazia vipengele muhimu pekee. Maombi italiki na hasa kupigia mstari, ambayo mtumiaji anaweza kukosea kwa kiungo ni fomu mbaya.
Uchaguzi wa rangi
Kama ilivyo kwa rangi ya vipengee vya kiolesura, kama ilivyo kwa fonti, ni bora kuziacha za kawaida, kwa chaguo-msingi. Delphi hutumia paji ya mfumo wa Windows, na mtumiaji anaweza kubinafsisha rangi kwa urahisi kwa kuibadilisha.
Usimamizi mbadala
Programu iliyofanywa kitaaluma inapaswa kuwa na uwezo wa kudhibitiwa sio tu na panya, bali pia na kibodi. Haipaswi kuwa na kazi ambazo zinaweza kufanywa tu na panya (kuchora kwa wahariri wa picha haihesabu!). Kwa kazi zinazotumiwa zaidi, unapaswa kutoa "funguo za moto" kwa upatikanaji wa haraka.
Matofali ya interface
Kama mambo maalum ya kiolesura cha mtumiaji, ubora wa mwingiliano wa mtumiaji na programu inategemea:
  • kufuata kipengele cha udhibiti na kazi inayofanya;
  • sheria ambazo kipengele cha udhibiti hufanya kazi.
    Ukurasa huu unajadili sheria za kuunda baadhi ya vipengele vya kiolesura.
Na sasa ninataka kuonyesha ni zana gani Delphi inatoa kwa ajili ya kusimamia vipengele kwenye Fomu, nafasi yao ya jamaa na tabia ya mshale wakati ufunguo unabonyezwa. Kichupo.

Kupanga vipengele vinavyohusiana na kila mmoja kwa utaratibu sahihi, kwanza ni muhimu kuziangazia. Unaweza tu kuzunguka eneo kwenye Fomu ambayo ina vipengele vilivyochaguliwa. Au kwa kushikilia" Shift", tumia kipanya sawa kuashiria kila kijenzi kitakachochaguliwa. Bofya kipanya tena kwenye kijenzi kilichochaguliwa (huku ukibonyeza " Shift") huiondoa.

Vipengele vilivyochaguliwa vinaweza kudhibitiwa kwa ujumla - kuhamishwa karibu na Fomu, maadili yaliyowekwa kwa mali sawa, kunakiliwa (kwa usakinishaji, kwa mfano, kwenye Fomu nyingine), hata kufutwa.

Sasa bonyeza-click kwenye moja ya vipengele na uchague kutoka kwenye orodha ya pop-up Nafasi -> Pangilia... Sanduku la mazungumzo litaonekana kukuwezesha kurekebisha nafasi ya usawa na wima ya vipengele katika kikundi. Kwa mfano, tunahitaji kupangilia vifungo vyetu vinne upande wa kushoto na kuhakikisha kuwa vina umbali sawa wa wima kati yao. Ili kufanya hivyo, chagua vifungo vya redio Mlalo: Pande za kushoto Na Wima: Nafasi kwa usawa.

Kwa kuchagua kipengee Kituo, tutapanga vipengele ili vituo vyao viwe kwenye mstari huo kwa usawa au kwa wima, na kipengee. Katikati kwenye dirisha huhamisha vipengele katikati ya dirisha, pia kwa usawa au kwa wima.

Katika mstari huo wa menyu Kichupo O rder... husababisha kisanduku cha mazungumzo kuonekana ambacho hudhibiti jinsi kielekezi kinavyosonga kupitia vipengee vya kiolesura wakati ufunguo unabonyezwa Kichupo. Wakati Fomu inaonekana kwenye skrini, kishale kitakuwa kwenye sehemu iliyo kwenye mstari wa kwanza wa sanduku la mazungumzo. Na kisha itasonga chini kwenye orodha. Katika kisanduku cha mazungumzo, mishale miwili ya bluu juu na chini hudhibiti nafasi ya sehemu iliyochaguliwa. Chagua sehemu inayohitajika, tumia mishale ili kuipeleka kwenye mstari unaohitajika kwenye orodha, na kadhalika.

Wakati wa kuchagua kipengee cha menyu Udhibiti -> Menyu ndogo inaonekana inayojumuisha vitu viwili:

  • Leta Mbele
  • Tuma kwa Nyuma
Hizi ni njia za vipengele ambazo zinapatikana pia kwa utaratibu. Kitufe1.TumaRudi nyuma huhamisha kitufe kwenye "chinichini" na Kitufe1.LetaMbele- kuleta mbele". Hiyo ni, ikiwa sehemu moja imewekwa juu ya nyingine, njia hizi hubadilishana nafasi zao. Kesi ambazo hii inaweza kutumika ni dhahiri.

Nina shida kutumia darasa la Delphi kutoka kwa nambari ya C ++. onyesho la delphi dll, ambalo husafirisha kitendakazi ambacho hurejesha kitu.
nambari yangu ya Delphi Dll inaonekana kama hii:

Maktaba ya DelphiTest; // hutumia sehemu.... chapa IMyObject = utaratibu wa kiolesura DoThis(n: Integer); fanya kazi DoThat: PWideChar; mwisho; TMyObject = class(TInterfacedObject,IMyObject) utaratibu DoThis(n: Integer); kazi DoThat: PChar; mwisho; // Utekelezaji wa TMyObject nenda hapa ... utaratibu TMyObject.DoThis(n: Integer); start showmessage("unaita mbinu ya DoThis na "+intToStr(n) +"parameta"); mwisho; kazi TMyObject.DoThat: PChar; anza showmessage("unaita kazi ya DoThat"); Matokeo:= Pchar("Hello im Dothat"); mwisho;

// Hamisha kazi ya DLL:

Kazi CreateMyObject: IMyObject; stdcall;uza nje; var txt: TextFile; anza AssignFile(txt,"C:\log.log"); Weka upya(txt); Writeln(txt,"hello"); Matokeo:= TMyObject.Create; mwisho; mauzo ya nje CreateMyObject;

katika mradi wangu wa C ++ nilitangaza kiolesura cha IMyObject kama hii:

Class IMyObject ( public: IMyObject(); virtual ~IMyObject(); utupu pepe DoThis(int n) = 0; char pepe* DoThat() = 0; );

na kazi yangu kuu ni kama hii:

Typedef IMyObject* (__stdcall *CreateFn)(); int main() ( HMODULE hLib; hLib = LoadLibrary(L"DelphiTest.dll"); dai(hLib != NULL); // kupita !! CreateFn pfnCreate; pfnCreate = (CreateFn)GetProcAddress((HINSTANCE,jectCreate)h "); ikiwa (pfnCreate == NULL) ( DWORD erc = GetLastError(); printf("%u\n", errc); // inapata hitilafu 127 ) else( printf("success load\n"); ) IMyObject* objptr = pfnCreate(); objptr->DoThis(5); FreeLibrary(hLib); int in; scanf_s("%i", &in); rudisha 0; )

katika mfano huu nilipata hitilafu ya wakati wa kukimbia wakati ninapojaribu kupata kazi iliyosafirishwa. makosa katika mstari:
IMyObject* objptr = pfnCreate();

Unaweza kuniambia nini kibaya na mfano wangu.
na ikiwezekana, mfano wowote wa kufanya kazi wa kupata darasa la Delphi (katika DLL) kutoka kwa nambari ya C++.

Suluhisho

Shida ya kwanza ni kupiga simu kongamano la njia. Kiolesura cha Delphi kinatumia rejista ambayo ni mkusanyiko maalum wa kupiga simu wa Delphi. matumizi ya stdcall Kwa mfano, kwa njia za kiolesura.

Shida inayofuata iko kwenye C++. Kiolesura chako cha C++ lazima kitoke kutoka kwa IUnknown. Zaidi ya hayo, haipaswi kutangaza mjenzi au mharibifu.

Kando na hili, msimbo wako wa Delphi unasafirishwa na PWideChar ambayo haijachorwa kwa char* . Imechorwa kwa wchar_t* .

Ukiangalia zaidi, kurudisha PChar hufanya kazi vizuri hapa kwa sababu utekelezaji wako unarudisha halisi. Lakini nambari mbaya zaidi labda itataka kutumia kamba iliyotengwa kwa nguvu, wakati ambapo muundo wako una kasoro.

Tafadhali kumbuka kuwa ili kuunda faili kwenye mzizi wa kiendeshi cha mfumo, lazima uwe msimamizi aliyeinuliwa. Kwa hivyo hii ni hatua nyingine ya kutofaulu.

Natarajia kuna mende zingine, lakini hii ndiyo yote nimepata hadi sasa.

Nakala hiyo iliandikwa kulingana na matokeo ya uchambuzi wa programu zilizoandikwa na watengenezaji wachanga wa kikundi chetu.

Tunapanga kwa usahihi mlolongo wa vipengele vya kubadili

Watumiaji wengi, hasa wale ambao hapo awali walifanya kazi katika DOS, wana tabia ya kubadili kati ya mashamba ya pembejeo si kwa panya, lakini kutumia kibodi na ufunguo wa Tab. Zaidi ya hayo, ni haraka zaidi kuliko kuchagua kila sehemu kwa kutumia kipanya. Kwa hiyo, utaratibu wa vipengele vya kubadili lazima uweke kwa usahihi. Hii inatumika kwa vipengele vilivyo ndani ya vipengele vyote vya chombo (paneli, GroupBoxes na kadhalika), na kwa vipengele vya chombo wenyewe, ikiwa kuna kadhaa kwenye fomu.

Mpangilio wa vipengele vya kubadili ndani ya chombo hutajwa na mali ya TabOrder. Kipengele cha kwanza kuanza kutumika ni kile kilicho na TabOrder sawa na 0, cha pili na 1, n.k., hadi vipengele vyote viorodheshwe. Kwa kuongeza, kijenzi kina sifa ya TabStop, ambayo inaonyesha kama kijenzi kitapokea msisitizo kinapogeuzwa kwa ufunguo wa Tab. Iwapo unahitaji kupiga marufuku kubadili kwa kipengele chochote, weka TabStop yake = uongo. Katika kesi hii, unaweza tu kubadili sehemu hii kwa kutumia panya.

Kuna matukio wakati watumiaji ambao wamezoea kubadili na ufunguo fulani katika programu moja, nje ya tabia, wanaendelea kuitumia kwa wengine. Hii mara nyingi hutokea kwa watumiaji wa 1C, ambapo ufunguo wa Enter unaweza kutumika kupitia sehemu za ingizo. Kweli, tutawapa fursa kama hiyo katika programu zetu ikiwa wataomba. Weka kipengele cha KeyPreview cha fomu kuwa kweli na uandike kidhibiti tukio cha OnKeyPress:

Utaratibu TForm1.FormKeyPress(Mtumaji: TObject; var Key: Char);
kuanza
ikiwa ord(key)=vk_Return basi
Form1.SelectNext(PriemForm.ActiveControl, kweli, kweli);
mwisho;

Kidhibiti hiki hutoa urambazaji kupitia vipengee vya fomu wakati kitufe cha Enter kimebonyezwa. Ikumbukwe kwamba njia hii haitafanya kazi na vifungo, kwa sababu ... kubonyeza Enter kwenye kitufe kunasababisha kubonyezwa, huku ukibofya Kichupo unatoa mwelekeo wa ingizo kwa kijenzi kinachofuata katika mfuatano wa kugeuza.

Vifungo chaguo-msingi

Watumiaji wote sawa huzoea haraka ukweli kwamba katika visanduku vya mazungumzo ya programu, kama sheria, unaweza kudhibitisha chaguo lako na kitufe cha Ingiza, na ughairi kwa ufunguo wa Esc. Wacha tusiwakatishe tamaa katika programu zetu, haswa kwani ni rahisi sana kufanya. Kwa kitufe kinachojibu Enter, weka kipengele cha Chaguo-msingi kuwa kweli. Kwa kitufe kinachojibu Esc, weka kipengele cha Ghairi kuwa kweli. Ni hayo tu.

Ndiyo au hapana

Sanduku zote za kidadisi zinazoomba vitendo vya mtumiaji lazima ziwe na angalau vitufe viwili: kuthibitisha kitendo na kukataa kitendo (Ndiyo/Hapana, Hifadhi/Ghairi, n.k.). Kitendo kinaweza kughairiwa kwa kufunga dirisha kwa kitufe cha [X] kwenye kichwa cha dirisha. Haikubaliki ikiwa kuna kifungo kimoja tu cha kuthibitisha kitendo, na kukataa inastahili kufunga dirisha na kitufe cha [X] kwenye kichwa, au hakuna uwezekano wa kukataa kabisa. Hii inachanganya mtumiaji, na kuinua swali la mantiki: jinsi ya kukataa?

Pia, usisahau kile kilichosemwa hapo juu katika aya ya "Vifungo chaguo-msingi".

Sanduku zote za mazungumzo zinapaswa kufunguliwa katikati ya skrini

Zilizowekwa katikati, sio mahali zilipoundwa katika hali ya muundo. Kwanza, inaonekana zaidi, na pili, huondoa moja kwa moja tatizo la maazimio tofauti ya skrini kwa watumiaji tofauti.

Ubaguzi unafanywa ikiwa sanduku la mazungumzo sio modal, na kama matokeo ya kazi ya mtumiaji katika dirisha hili, mabadiliko hutokea mara moja kwenye dirisha kuu (kwa mfano, kuchuja seti ya data, kuchora upya grafu, nk).

Ukubwa wa dirisha haipaswi kuzidi ukubwa wa skrini

Kwa hali yoyote. Ni aibu wakati sehemu ya dirisha inaenea nje ya skrini. Mahitaji haya hayategemei azimio la skrini ya mtumiaji, i.e. visingizio kama vile “Wacha waweke azimio la juu zaidi” hazifanyi kazi.

Urekebishaji sahihi wa vipengele vya dirisha

Vipengele vya dirisha vinapaswa kurekebisha ukubwa au kusonga kwa usahihi wakati dirisha linarekebishwa, wakati dirisha limeimarishwa, na wakati dirisha linarejeshwa baada ya uboreshaji.

Kila kitu kinaonekana kila wakati

Kupunguza ukubwa wa dirisha haipaswi kusababisha kutoweka kwa vipengele vya dirisha na, ikiwezekana, haipaswi kusababisha kuonekana kwa baa za kitabu (scrollers) za dirisha yenyewe. Unaweza kupunguza ukubwa wa chini wa dirisha ili vipengele vyote vionekane na kupatikana. Ikiwa haiwezekani kuweka vipengele ili vyote vionekane kwenye dirisha, unaweza kutumia alamisho (kama vile PageControl) kugawanya vipengele katika vikundi. Pia hatupuuzi visingizio kuhusu utatuzi wa skrini.

Vidokezo kila mahali, vidokezo kila wakati

Kwa vitufe, haswa kwenye upau wa vidhibiti (kama vile Toolbar), vidokezo vinapaswa kubainishwa ili iwe wazi kila wakati kwa nini hii au kitufe hicho kinahitajika.

Wigo wa rangi

Haupaswi kuchora vipengele kwenye fomu katika rangi zote za upinde wa mvua. Hii huchosha macho na kuvuruga usikivu wa mtumiaji. Haionekani "poa". Kuangazia hutumiwa wakati ni muhimu kuteka tahadhari ya mtumiaji kwa kipengele maalum au sehemu maalum ya dirisha. Kwa mfano, rekodi za rangi ambazo zina makosa na rangi nyekundu au, kinyume chake, rekodi za rekodi ambazo ziliangaliwa kwa ufanisi na rangi ya kijani.

Hitimisho

Kuna njia nzuri sana ambayo inakuwezesha kupata makosa katika programu kwa ujumla na interface hasa. Ni rahisi: fikiria mwenyewe mahali pa mtumiaji na kwa nusu saa jaribu kufanya kazi jinsi anavyofanya kazi. Ni bora zaidi ikiwa mtumiaji wako yuko ndani ya masafa (kwa mfano, anafanya kazi katika shirika moja). Katika kesi hii, kaa karibu naye, au bora zaidi, badala yake, na jaribu kufanya kazi yake. Ingiza data, ibadilishe, onyesha ripoti n.k. Ikiwa hujui jinsi ya kuifanya vizuri, muulize mtumiaji wako. Usifanye shughuli moja au mbili za aina moja, kama katika hali ya kurekebisha, lakini 20-30, au hata zaidi shughuli tofauti, kwa maagizo tofauti. Sahau kuingiza kitu au kuiingiza vibaya na uone jinsi programu inavyoitikia. Utaona haraka udhaifu wa programu yako.

Mwandishi wa nakala hiyo alibadilisha kazi ya kamati ya uandikishaji katika chuo kikuu, na katika mwaka wa kwanza wa kuanzisha programu hiyo, alitumia masaa 3-4 kwa siku katika kamati ya uandikishaji, kusajili waombaji, kujaza data zao za kibinafsi na kuzitoa. ripoti za kufaulu mitihani. Na katika saa zilizobaki za kazi alirekebisha makosa na mapungufu. Niamini, mwaka ujao hakutakuwa na shida zilizoachwa. Kitu kimoja kilifanyika wakati wa kuanzisha moduli ya wafanyakazi.

Kwa hivyo, kumbuka uzoefu wa mtumiaji. Ifanye iwe rahisi na ya kupendeza kwao kufanya kazi na programu zako.

tu kwa matokeo

kufuata madhubuti kwa tarehe za mwisho

Uwazi

utekelezaji wa mradi

msaada wa kiufundi kama zawadi

Kupanga, marekebisho, mashauriano kwenye 1C

Jinsi tunavyofanya kazi

1. Tunajadili tatizo kupitia simu. Ikiwa una ufikiaji wa mbali, ionyeshe kwenye skrini ya kompyuta yako.

2. Tunakadiria kazi katika rubles ikiwa mradi ni mkubwa; ikiwa sivyo, takriban idadi ya masaa.

3. Tunafanya kazi.

4. Unakubali kazi katika programu yako, ikiwa kuna mapungufu yoyote, tunayarekebisha.

5. Tunatoa ankara, unalipa.

Gharama ya kazi

1. Kazi zote zimegawanywa katika makundi 3: mashauriano, uppdatering usanidi wa kawaida, kuendeleza au kupanga ripoti mpya, usindikaji, vifungo, nk.

3. Kwa kazi ya muda mrefu zaidi ya masaa 10, maelezo ya kiufundi yenye maelezo na gharama ya kazi lazima yatayarishwe mapema. Kazi huanza baada ya makubaliano ya kiufundi na wewe.

Msaada wa kiufundi

1. Ukipata hitilafu zozote katika kazi iliyokubaliwa awali ndani ya miezi 3, tunasahihisha bila malipo.

2. Kwa wateja wa kawaida, tunasahihisha mapungufu yoyote katika kazi yetu bila malipo ndani ya mwaka mmoja.

Programu ya kusimamia biashara yako.

Nunua 1C:Enterprise

Sisi ni muuzaji rasmi wa 1C, unaweza kununua bidhaa mbalimbali za programu na leseni kutoka kwetu. Mbali na ununuzi wa "sanduku," tutakusaidia kuanzisha programu, kutoa ushauri na kufanya mipangilio ya msingi.

  • Uhasibu
  • Hifadhi otomatiki
  • Jumla
  • Usaidizi wa ufungaji na usanidi wa awali umejumuishwa kwenye kifurushi!
  • Mipangilio ya kurekebisha kwa mahitaji ya wateja, kuendeleza moduli mpya kwa kukosekana kwa kazi muhimu katika usanidi wa kawaida.
1c uhasibu 1C: Usimamizi wa Biashara 1C: Rejareja 1C: Usimamizi wa Mshahara na Wafanyakazi
Kutoka 3300 kusugua. Kutoka 6700 kusugua. Kutoka 3300 kusugua. Kutoka 7400 kusugua.

Utoaji wa seva.

Usanidi wa papo hapo wa seva + 1C.

Hakuna seva? Hakuna shida, tutachagua na kusanidi seva haraka kwenye wingu. Kwa ada ndogo unapata suluhisho la kuaminika sana.

  • Upatikanaji 24\7
  • Hakuna haja ya kuwa na msimamizi wa mfumo wako mwenyewe (akiba itafikia gharama ya seva yako).
  • Usanidi wa haraka na usakinishaji wa 1C kwenye seva, katika siku 3 utakuwa tayari na mfumo wa kufanya kazi kikamilifu.
  • Unaweza kuhamia seva ya ndani wakati wowote ikiwa haujaridhika na suluhisho.

SMS kutoka kwa 1C yako

Je, ungependa wateja wako wajue kuhusu ofa na mapunguzo? Je, wateja hawarudi? Sanidi kutuma SMS moja kwa moja kutoka 1C!

Kampuni yetu itaweza kusanidi kutuma SMS kwa wateja wako moja kwa moja kutoka 1C. Mifano ya matukio ambayo yanaweza kujiendesha:

  • Asante kwa ununuzi na bonasi hutolewa mara tu baada ya ununuzi unaofuata.
  • Ongezeko la bonasi kwenye kadi kama zawadi kwa siku ya kuzaliwa\nyingine muhimu au likizo.
  • Taarifa ya kuwasili kwa bidhaa kwenye ghala.
  • Mwisho wa muda wa bonasi za zawadi.
  • Taarifa ya kupokea malipo ya mapema na uhifadhi wa bidhaa.
  • Anwani yenye maelekezo ya duka/ofisi, nambari za simu.
  • Nakadhalika.

Kuweka katika 1C kunaweza kufanywa na wataalamu wetu au wafanyakazi wako. Unaweza kutazama ushuru kwenye ukurasa wa ushuru wa SMS.

  • Uwasilishaji wa SMS uliohakikishwa, pesa hutozwa tu kwa SMS iliyowasilishwa.
  • Bei tofauti kwa kila SMS.
  • Ongeza salio lako kwa njia tofauti.
  • Tazama historia ya SMS zote zilizotumwa wakati wowote.
  • Jina la mtumaji badala ya nambari ya kidijitali katika simu ya mpokeaji ujumbe.