On-line: гостей 1. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 7280
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 31.01.23 18:16. Заголовок: Замена функций для хХарбора


Пытаюсь прикрутить часть функций для хХарбора из Харброра - _LogFile()
Нужны функции HB_DEFAULTVALUE и HB_TSTOSTR
Есть ли аналог в хХарборе ?
Если нет, то как их можно заменить ?

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 8 [только новые]


moderator




Пост N: 2087
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 31.01.23 21:33. Заголовок: Andrey пишет: Нужны..


Andrey пишет:

 цитата:
Нужны функции HB_DEFAULTVALUE() и HB_TSTOSTR
Есть ли аналог в хХарборе ?
Если нет, то как их можно заменить ?


Для функции HB_DEFAULTVALUE можно использовать такое определение

#xtranslate hb_defaultValue( <v>, <x> ) => iif( StrTran( ValType( <v> ), "M", "C" ) == StrTran( ValType( <x> ), "M", "C" ), <v>, <x> )

Функция HB_TSTOSTR() есть в хХарборе

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7281
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 31.01.23 21:55. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
Для функции HB_DEFAULTVALUE можно использовать такое определение


Спасибо БОЛЬШОЕ ! Получилось !

gfilatov2002 пишет:

 цитата:
Функция HB_TSTOSTR() есть в хХарборе


В новой версии может и есть, но я использую - xHarbour 1.2.3 Intl. (SimpLex) (Build 20130903)
Не хочу переходить на новую.
А в ней нет.
Может есть у кого кусок кода функции HB_TSTOSTR() из новой версии ?

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 7740
Зарегистрирован: 17.05.05
ссылка на сообщение  Отправлено: 31.01.23 22:02. Заголовок: Andrey пишет: Может..


Andrey пишет:

 цитата:
Может есть у кого кусок кода функции HB_TSTOSTR() из новой версии ?


Скачать новую версию и дёрнуть от туда кусок кода , не судьба ?

Спасибо: 0 
ПрофильЦитата Ответить
moderator




Пост N: 2088
Зарегистрирован: 11.02.10
ссылка на сообщение  Отправлено: 01.02.23 12:17. Заголовок: Andrey пишет: Может..


Andrey пишет:

 цитата:
Может есть у кого кусок кода функции HB_TSTOSTR() из новой версии


См. ниже.

#include <ctype.h> 

#include "hbapi.h"
#include "hbapierr.h"
#include "hbapiitm.h"
#include "hbset.h"
#include "hbdate.h"

HB_FUNC( HB_TSTOSTR )
{
long lDate, lTime;

if( hb_partdt( &lDate, &lTime, 1 ) )
{
char szBuffer[ 24 ];

hb_dateTimeStampStr( szBuffer, lDate, lTime );
if( hb_parl( 2 ) )
{
if( lTime == 0 )
{
if( lDate == 0 )
hb_retc_const( "00:00" );
else
hb_retclen( szBuffer, 10 );
}
else
{
int i = 23;
while( szBuffer[ i - 1 ] == '0' )
--i;
if( szBuffer[ i - 1 ] == '.' )
{
--i;
if( szBuffer[ i - 1 ] == '0' && szBuffer[ i - 2 ] == '0' )
i -= 3;
}
if( lDate == 0 )
hb_retclen( szBuffer + 11, i - 11 );
else
hb_retclen( szBuffer, i );
}
}
else
hb_retclen( szBuffer, 23 );
}
else
hb_errRT_BASE_SubstR( EG_ARG, 3012, NULL, HB_ERR_FUNCNAME, HB_ERR_ARGS_BASEPARAMS );
}


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7282
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 01.02.23 15:03. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
См. ниже.


Спасибо БОЛЬШОЕ !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7284
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.02.23 18:31. Заголовок: gfilatov2002 пишет: ..


gfilatov2002 пишет:

 цитата:
См. ниже.


Что-то не собирается... Выдаёт ошибку:
 
HbMake v1.30 - xHarbour Make Utility
Copyright (C) 2000-2013 xHarbour project - http://www.xharbour.org _stddef.h(54) Error E0030 Syntax error: "syntax error at 'UNSIGNED'"32 bit)
_stddef.h(73) Error E0030 Syntax error: "syntax error at 'INT'"
_stddef.h(83) Error E0030 Syntax error: "syntax error at 'UNSIGNED'"
_stddef.h(93) Error E0030 Syntax error: "syntax error at 'WCHAR_T'"
_stddef.h(102) Error E0030 Syntax error: "syntax error at 'WCHAR_T'"
_stddef.h(109) Error E0030 Syntax error: "syntax error at 'LONG'"
mbctype.h(35) Error E0030 Syntax error: "syntax error at 'CHAR'"
mbctype.h(57) Error E0030 Syntax error: "syntax error at '__CDECL'"
mbctype.h(66) Error E0030 Syntax error: "syntax error at '__CDECL'"
mbctype.h(73) Error E0030 Syntax error: "syntax error at '__CDECL'"
ctype.h(52) Error E0030 Syntax error: "syntax error at 'SHORT'"
ctype.h(65) Error E0030 Syntax error: "syntax error at '__CDECL'"
ctype.h(78) Error E0030 Syntax error: "syntax error at '__CDECL'"
ctype.h(79) Error E0030 Syntax error: "syntax error at '}'"


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 7285
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.02.23 18:51. Заголовок: Да фиг с этой функци..


Да фиг с этой функцией.
В xHarbour 1.2.3 Intl. (SimpLex) (Build 20130903) даже нет HB_DATETIME()
Так что не нужна работа со временем.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 4200
Зарегистрирован: 17.02.12
ссылка на сообщение  Отправлено: 02.02.23 19:28. Заголовок: Andrey пишет даже не..


Andrey пишет
 цитата:
даже нет HB_DATETIME()


Можно так делать Скрытый текст

или использовать Seconds() (последние 3-и знака) вместо BK_MILLISECONDS, добавляя перед ними точку
Работает так в сервере LetoDb 1.0 версии (в триггере на сервере) с 2011 года
PS
без точки лучше, т.к. вывод через
cDate := "20210325234515123"
Transform(cDate, "@R 9999-99-99 99:99:99.999")

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 182
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет