달력 상자를 사용하여 날짜 범위 선택이 JSL 함수는 두 개의 달력 상자가 포함된 모달 대화 상자를 표시합니다. 상자는 JSL과 연결되어 있으므로 왼쪽 상자에서 최소 날짜를 선택하면 오른쪽 상자에서 사용할 수 없는 날짜가 회색으로 표시되고 다른 방향에서도 비슷합니다.
Linked calendar boxesLinked calendar boxesLinked calendar boxesLinked calendar boxes연결된 달력 상자
JSL은 날짜 범위에 대한 선택적 제한을 사용하여 호출할 수 있는 함수로 작성되었습니다(제목 표시줄에 표시됨).함수 호출은 목록을 반환합니다.
{2019년 8월 21일, 2019년 8월 26일}
promptDateRange = Function( {minAllowed = 1jan1001, maxAllowed = 31dec2999},
{roundMidnight, result, startDate, endDate}, // local variables
roundMidnight = Function( {datetime}, // return the date, without the time...which is midnight at the start of a day
As Date( Date MDY( Month( datetime ), Day( datetime ), Year( datetime ) ) )
);
minAllowed = roundMidnight( minAllowed );
maxAllowed = roundMidnight( maxAllowed );
result = New Window( "Select date range between " || Char( minAllowed ) || " and " || Char( maxAllowed ),
modal, // modal: the window must be closed before JMP can continue
// do the validation in OnValidate, NOT OnClose! Doing it in OnClose will prevent canceling, which is Bad!
<<ONVALIDATE> (startDate << getMaxDate),
startDate << date( startDate << getMaxDate )
);
)
)
),
H Center Box( Text Box( "end", <<SETFONTSIZE></SETFONTSIZE></ONVALIDATE>이 JSL은 달력 컨트롤의 시간 표시를 끄고 자정 이후 시간이 나타날 때마다 초를 제거합니다. JSL은 또한 왼쪽 및 오른쪽 컨트롤에 대해 유효한 날짜 범위를 설정합니다. 왼쪽 컨트롤에서 날짜를 선택하면 오른쪽 컨트롤의 최소 날짜가 변경되고 다른 방향에서도 비슷합니다. 오늘 버튼도 제거되었습니다. 시간을 지원하기 위해 이 JSL을 수정하려고 하면 오늘 버튼이 콜백을 수행하지 않으며 선택한 시간이 최소 및 최대 날짜 값처럼 자정으로 반올림되지 않는다는 것을 알게 될 것입니다.
또한보십시오
https://www.jmp.com/support/help/14-2/date-time-functions.shtml

한 쌍의 달력 상자를 사용하여 날짜 범위를 선택하십시오.
Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.감사합니다 @Craige_Hales 당신의 답변을 위해.
친애하는
Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.감사합니다 @Craige_Hales 필터의 달력 아이콘 문제를 지적해 주셔서 감사합니다.숫자 텍스트 위로 마우스를 가져갈 때마다 아이콘이 나타나 텍스트 편집 또는 달력 편집 중에서 선택할 수 있는 옵션을 제공합니다.이 문제는 향후 릴리스에서 수정되었습니다.지적하신 대로 달력은 현재 릴리스에서도 계속 작동하지만 어떤 경우에는 기능을 암시하는 달력 아이콘이 표시되지 않습니다.
Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.자신만의 것을 만들고 싶다면 이와 같은 것을 시도해 보세요. 제공하는 함수를 호출하는 것 외에도 오늘이 아닌 두 개의 달력 날짜를 범위로 초기화하도록 했는데 이것이 더 유용할 것 같습니다. 모달 창 대신 보고서에 달력을 포함할 수 있습니다.
아래에 적힌대로 보시면 됩니다 범위 설정(...) 보고 싶지 않은 데이터를 숨기고 제외할 뿐입니다. 로컬 데이터 필터와 통합되지는 않지만 비슷한 방식으로 작동합니다.
dt = New Table( "Untitled 3",
Add Rows( 367 ),
New Column( "date", Numeric, "Continuous", Format( "ddMonyyyy", 10 ), Input Format( "ddMonyyyy" ), Formula( 01Jan2020 + In Days( Row() - 1 ) ) ),
New Column( "value", Numeric, "Continuous", Format( "Best", 12 ), Formula( Random Uniform() ) )
);
gb = dt << Graph Builder(
Size( 531, 456 ),
Show Control Panel( 0 ),
Variables( X( :date ), Y( :value ) ),
Elements( Points( X, Y, Legend( 3 ) ), Line Of Fit( X, Y, Legend( 5 ) ) )
);
wait(0);
setrange=function({low,high},
dt<<SELECT hidden=""> (startDate << getMaxDate),
startDate << date( startDate << getMaxDate )
);
setrange(roundMidnight( startDate << getDate ),roundMidnight( endDate << getDate )); // callback added
)
)
),
H Center Box( Text Box( "end", <<SETFONTSIZE></SETFONTSIZE></SELECT>Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.안타깝지만 모든 기간(월, 주, 연도 등)에 대한 필터를 사용하는 대신 달력 상자를 필터로 사용할 수 있다고 생각했습니다.
당신의 답변에 감사드립니다.
최선을 다해!
Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.나는 그렇게 생각하지 않습니다. 사용자 정의 선택기는 기능 요청일 수 있습니다.
범위 슬라이더를 얻을 수 있지만 넓은 기간에 대해 일일 정확도는 제공되지 않습니다.
drag the two selector controlsdrag the two selector controlsdrag the two selector controlsdrag the two selector controls두 개의 선택기 컨트롤을 드래그하세요.
달력은 이미 한 번에 하나씩 있어서 찾기가 매우 어렵습니다. 파란색 선 위로 마우스를 가져가면 클릭해야 할 위치가 아이콘에 표시되는 경우가 있습니다. 아이콘을 클릭하기 위해 이동하면 사라지지만, 표시된 곳은 계속 클릭할 수 있습니다! 날짜의 왼쪽 부분 위로 커서를 이동하면 커서가 가리키는 손가락으로 변경됩니다. (JMP 15. 16이 더 나을 수도 있습니다.) @XanGregg @danschikore @Audrey_Shull
Re: 달력 상자를 사용하여 날짜 범위를 선택하세요.안녕,
이 스크립트를 사용하여 그래프에 적용된 로컬 데이터 필터를 교체하고 싶습니다.
로컬 데이터 필터에는 연도, 월, 날짜의 3가지 선택 사항이 있습니다.
2개의 달력을 사용하면 더욱 간단해집니다.
로컬 데이터 필터에 포함시킬 수 있나요?
친애하는