Автор | Сообщение |
|
| |
Пост N: 6668
Зарегистрирован: 17.05.05
|
|
Отправлено: 30.12.17 13:54. Заголовок: Шаблон вывода
Есть допустим цифирь 26223.54 (заранее не известно какая будет цифра) Хочу вывести ее с разделителем разрядов ? Transform(26223.54,"999'999'999.99") // выводит ' 26'223.54 а хотелось бы так 26'223.54 , есть ли какой шаблон или функция для этого (или же писать самопал) ?
|
|
|
Новых ответов нет
[см. все]
|
|
|
| постоянный участник
|
Пост N: 5670
Зарегистрирован: 12.09.06
|
|
Отправлено: 30.12.17 14:05. Заголовок: Dima пишет: есть ли..
Dima пишет: цитата: | есть ли какой шаблон или функция для этого (или же писать самопал) ? |
| Скорее всего нет. Пиши функцию после обработки Transform().
|
|
|
|
| |
Пост N: 6669
Зарегистрирован: 17.05.05
|
|
Отправлено: 30.12.17 14:37. Заголовок: Andrey пишет: Пиши ..
Andrey пишет: цитата: | Пиши функцию после обработки Transform(). |
| На вскидку и на скорую руку получилось так a:=123456789.99 ? tt(transform(a,"999'999'999'999'.99")) ? tt(Transform(26223.54,"999'999'999.99")) wait Func tt(cstr) local el local i:=0 for each el in cstr i++ if isdigit(el) exit endif next return padl(substr(cstr,i),len(cstr))
|
|
|
|
| постоянный участник
|
Пост N: 5671
Зарегистрирован: 12.09.06
|
|
Отправлено: 30.12.17 17:25. Заголовок: Кстати, а как вывод ..
Кстати, а как вывод мемо-поля сделать ? А то достала буковка Н везде при выводе мемо-поля... База в кодировке 866, приложение в 1251. Вывожу: ? ALLTRIM(MEMOTRAN(TOVAR->MREM,' ',' '))
|
|
|
|
| |
Пост N: 6670
Зарегистрирован: 17.05.05
|
|
Отправлено: 30.12.17 17:38. Заголовок: Тоже так делаю но бу..
Тоже так делаю но буквы H нет при выводе , правда база и приложение в 866 , да и MEMO не юзаю , для таких вещей использую поле "C" примерно до 250 знаков. С MEMO в своё время напарился , так как при сбое компа , как ни странно портился MEMO файл.
|
|
|
|
| |
Пост N: 556
Зарегистрирован: 08.07.06
|
|
Отправлено: 30.12.17 22:32. Заголовок: Andrey пишет: Кстат..
Andrey пишет: цитата: | Кстати, а как вывод мемо-поля сделать ? А то достала буковка Н везде при выводе мемо-поля... База в кодировке 866, приложение в 1251. Вывожу: ? ALLTRIM(MEMOTRAN(TOVAR->MREM,' ',' ')) |
| У меня CHR(141) возникала после редактирования хоть мемо-поля, хоть простой переменной в MEMOEDIT() с "коротким" значением параметра "длина строки": FUNCTION MemoEdit( ; cString, ; nTop, ; nLeft, ; nBottom, ; nRight, ; lEditMode, ; xUserFunction, ; nLineLength, ; nTabSize, ; nTextBuffRow, ; nTextBuffColumn, ; nWindowRow, ; nWindowColumn ) По умолчанию там стоит hb_default( @nLineLength , nRight - nLeft + 1 ) Я сделал 65535 - больше CHR(141) не мешают жить. Тьфу*3. Раз уж оффтопим, есть какой "заменитель" MEMOEDIT(), чтобы поддерживал SHIFT+стрелки = выделение/копирование/удаление/вставка текста, чтобы "по взрослому" ?
|
|
|
|
| |
Пост N: 558
Зарегистрирован: 08.07.06
|
|
Отправлено: 31.12.17 14:07. Заголовок: По теме топика: ATR..
По теме топика: ATREPL(" '",Transform(26223.54,"999'999'999.99")," ") решает поставленную задачу: пробел с апострофом заменяет на два пробела + сохраняет заданную ширину.
|
|
|
|
| |
Пост N: 6673
Зарегистрирован: 17.05.05
|
|
Отправлено: 31.12.17 14:49. Заголовок: Sergy Да тоже вариа..
Sergy Да тоже вариант !
|
|
|
|
| |
Пост N: 179
Зарегистрирован: 05.10.06
|
|
Отправлено: 01.01.18 23:35. Заголовок: STRTRAN(ALLTRIM(Tran..
STRTRAN(ALLTRIM(Transform(26223.54,"999 999 999.99"))," ","'")
|
|
|
|
| постоянный участник
|
Пост N: 5953
Зарегистрирован: 12.09.06
|
|
Отправлено: 12.07.18 11:07. Заголовок: Всем привет ! Есть п..
Всем привет ! Есть папка с файлами типа Test8_4DocOle_12.07.2018.doc, Test8_4DocOle_12.07.2018(1).doc, Test8_4DocOle_12.07.2018(2).doc и т.д. Нужно получить новое имя файла которое будет больше предыдущего на единицу. Т.е. как сам Windows сам делает при записи нового файла в папку. Хотелось бы иметь в Харборе(МиниГуи) стандартную функцию типа GetFileNameMask("Test8_4DocOle_12.07.2018") Может кто себе уже сделал ?
|
|
|
|
| постоянный участник
|
Пост N: 1925
Зарегистрирован: 17.02.12
|
|
Отправлено: 12.07.18 11:43. Заголовок: Andrey *----------..
Andrey *----------------------------------------------------------------------------* FUNC _FileNameNum( cFile ) *----------------------------------------------------------------------------* LOCAL i := 0 LOCAL cExt := hb_FNameExt (cFile) LOCAL cFil := hb_FNameName(cFile) If ! hb_FileExists(cFile); RETURN cFile EndIf WHILE ( hb_FileExists(cFil + ' (' + hb_ntos(++i) + ')' + cExt) ) END RETURN ( cFil + ' (' + hb_ntos(i) + ')' + cExt )
|
|
|
|
| постоянный участник
|
Пост N: 5954
Зарегистрирован: 12.09.06
|
|
Отправлено: 12.07.18 12:20. Заголовок: SergKis Спасибо БОЛ..
SergKis Спасибо БОЛЬШОЕ !
|
|
|
|
|
| постоянный участник
|
Пост N: 5955
Зарегистрирован: 12.09.06
|
|
Отправлено: 12.07.18 13:10. Заголовок: Не совсем правильно ..
Не совсем правильно работает. Первый раз правильно, т.е. возвращает файл с путём, второй и т.д. неправильно - возвращает только файл. Я думаю что нужно модифицировать: * ====================================================================== FUNC GetFileNameMask( cFile ) LOCAL cExt := hb_FNameExt (cFile) LOCAL cFil := hb_FNameName(cFile) LOCAL cPth := hb_FNameDir (cFile) LOCAL i := 0 If ! hb_FileExists(cFile); RETURN cFile EndIf WHILE ( hb_FileExists(cFil + '(' + hb_ntos(++i) + ')' + cExt) ) END cFile := cFil + '(' + hb_ntos(i) + ')' + cExt IF AT("\",cFile) > 0 cFile := hb_FNameName(cFile) ENDIF RETURN ( cPth + cFile )
|
|
|
|
| постоянный участник
|
Пост N: 1929
Зарегистрирован: 17.02.12
|
|
Отправлено: 12.07.18 13:50. Заголовок: Andrey Извини дал с..
Andrey Извини дал старый вариант. *----------------------------------------------------------------------------* FUNC FileNameNum( cFile ) // При наличии файла добавить число версии в имя *----------------------------------------------------------------------------* LOCAL i := 0, cPth, cFil, cExt If ! hb_FileExists(cFile); RETURN cFile EndIf hb_FNameSplit(cFile, @cPth, @cFil, @cExt) WHILE ( hb_FileExists( hb_FNameMerge(cPth, cFil + ' (' + hb_ntos(++i) + ')', cExt) ) ) END RETURN hb_FNameMerge(cPth, cFil + ' (' + hb_ntos(i) + ')', cExt)
|
|
|
|